将 Textview 放在列表片段之上

2023-12-23

如何在片段顶部添加文本视图。我使用以下适配器来填充列表片段,并且 xml 文件是列表片段中的每一行。我需要在列表视图之上添加一个文本视图,该文本视图必须可以与列表一起滚动?

     public class Adapter extends BaseAdapter {
    Context context;

    public TextView txtName;
    public TextView txtTitle;


    private LayoutInflater mInflater;
    private Storage storage;
    FontManager fontManager;
    Typeface typeface;

    public Adapter(Context _context,Storage _storage) {
        context = _context;

        mInflater = LayoutInflater.from(context);
        this.storage = _storage;

        fontManager = new FontManager(_context);
        typeface = fontManager.getTypeFace();

    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return _storage.size();
    }

    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub

        convertView = mInflater.inflate(R.layout.row3, null);

        txtName = (TextView) convertView.findViewById(R.id.tvName);
        txtName.setTypeface(typeface);
        txtName.setText(storage.getName(position));

        txtTitle = (TextView) convertView.findViewById(R.id.tvTitle);
        txtTitle.setTypeface(typeface);
        txtTitle.setText(storage.getTitle(position));

        return convertView;
    }
}

xml:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="vertical"
    android:padding="20dp"
    android:scrollbars="none" 
    android:id="@+id/ll1">

    <TextView
        android:id="@+id/tvName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/tvTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textColor="@android:color/black" />

</LinearLayout>

列表片段:

    public class SampleListFragment extends ListFragment {

    int number;

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onActivityCreated(savedInstanceState);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        number = getArguments().getInt(
                "num", 0);
        new SampleAsyncTask(this, getActivity(), number).execute();
        return super.onCreateView(inflater, container, savedInstanceState);
    }

    @Override
    public void onListItemClick(ListView l, View v, int position, long id) {
        // TODO Auto-generated method stub      
        }
    }
}

AsyncTask 类中使用以下代码来填充列表片段

Adapter adapter = new Adapter(context, storage);
listFragment.setListAdapter(adapter);

您可以执行以下操作或将文本视图作为标题添加到列表视图中

引用自文档

ListActivity(ListFragment 类似)具有默认布局,由屏幕中央的单个全屏列表组成。但是,如果您愿意,您可以通过设置您自己的视图布局来自定义屏幕布局setContentView()在 onCreate() 中. To do this, your own view MUST contain a具有 id 的 ListView` 对象“@android:id/列表”(或者如果在代码中则列出)

活动_main.xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

     <fragment android:name="com.example.listfragment.MyFragment"
            android:id="@+id/frag"
            android:layout_above="@+id/button1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />


</RelativeLayout>

MyFragment.java

public class MyFragment extends ListFragment {

    String names[] ={"A","B","C"};
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onActivityCreated(savedInstanceState);
    }
     @Override
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
       Bundle savedInstanceState) {
      View myFragmentView = inflater.inflate(R.layout.list_frag, container, false);
      TextView tv = (TextView) myFragmentView.findViewById(R.id.textView1);
      tv.setText("My Header");
      setListAdapter(new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,names));
      return myFragmentView;
     }
     @Override
     public void onListItemClick(ListView l, View v, int position, long id) {
         // on click display the item in toast
          Toast.makeText(getActivity(), (String)l.getItemAtPosition(position), Toast.LENGTH_SHORT).show();
         }
}

列表片段.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:text="TextView" />

    <ListView
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_centerHorizontal="true" >

    </ListView>

</RelativeLayout>

快照

编辑:如果您希望文本视图滚动

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="19dp"
        android:text="TextView" />

</RelativeLayout>

调用 setListAdapter 之前

  View view = inflater.inflate(R.layout.text, null);
  TextView textinlfated = (TextView) view.findViewById(R.id.textView1);
  ListView lv = getListView();
  textinlfated.setText("TextView scrolls");
  lv.addHeaderView(view);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Textview 放在列表片段之上 的相关文章

  • Android SyncAdapter 回调

    我已经按照 SDK 中的 SimpleSyncAdapter 示例项目的思路实现了 SyncAdapter AccountManager 和私有 ContentProvider 一切都运转良好 现在 当从远程服务器下载了设置了特定标志的新行
  • 无法解析配置“:app:_debugCompile”的所有依赖项

    我正在尝试在我的 Android 应用程序上使用 Google 地图 我安装了 Google Play 服务并获取了 API 密钥 我不明白为什么我会收到此错误消息 我认为它抱怨以下内容
  • Firebase 存储 URL 不断随着新令牌的变化而变化

    我正在尝试使用 firebase 数据库和存储构建社交媒体应用程序 以下是预期的流程 用户上传个人资料图片 该图片存储在当前用户文件夹中的 Firebase 存储中 并且 URL 存储在 Firebase 数据库中以便快速访问 工作正常 用
  • 未向 HAL 提供足够的数据,预期位置

    我在 Android Studio 中收到此错误 我只想在按下按钮时打印文本 我收到以下错误 每次按下按钮时都会出现该错误 如果我取消注释掉意图 它也可以正常工作 但是我拥有的代码越多 错误更改就越多 我实际上不确定这是真正的错误 我这么说
  • Android Studio 2.2 更新:未使用新的 Gradle 插件 2.2.0 生成对齐的 APK (zipAlign)

    将 Android Studio 更新到版本 2 2 后 我还获得了 Gradle 插件的更新 它是 2 1 3 classpath com android tools build gradle 2 2 0 我看到未对齐的变体 APK 文件
  • Android Json结果处理

    我有这样的 Json 结果 array getJSONObject j 执行代码 WAT2 FreeIssuePrefix DisPaySchedulePrefix NextFreeIssueNo 1 NextReturnNo 20 Upl
  • 如何删除带有操作栏、视图页面和多个片段的选项卡?

    我正在使用我找到的代码here https stackoverflow com questions 10082163 actionbarsherlock tabs multi fragments public class ActionBar
  • Android Honeycomb 中的加载器

    我正在尝试弄清楚如何使用Loaders在 Android 3 0 中 但似乎无法让它工作 该文档仅描述使用CursorLoader但我正在使用AsyncTaskLoader 从文档看来你应该只需要实现AsyncTaskLoader load
  • 在android中使用短信管理器发送批量短信

    我正在使用以下方式向近 90 100 个号码发送短信SmsManager 我正在从文件中读取数字并将数字传递给 sendtextmessage 函数 如下所示 String nos this array contains mobile no
  • 如何将 FAB 转换为弹出菜单?

    根据材料设计指南 https material google com components buttons floating action button html buttons floating action button transit
  • 上传图片不显示,但其他图片显示

    我遇到了一些奇怪的事情 我可以看到我正在上传的图像link http www justedhak comlu com images uploaded images jpg但它没有显示在应用程序中 但如果我输入另一张图片link http a
  • 未从线程接收位置数据

    我尝试使用计时器经常发送包含用户位置的短信 最初 我遇到了空指针异常 这是由于我犯了一个简单的错误 一旦解决了这个问题 一切似乎都运行良好 但是 它永远不会获取我的位置 因此 不断发送的文本显示 无法接收位置 我想问的是为什么它无法获取我的
  • Flutter 图像选择器明确请求许可

    图像选择器包说 无需配置 该插件应该开箱即用 不再需要添加 android requestLegacyExternalStorage true 作为属性 AndroidManifest xml 中的标记 如 image picker 所示
  • Android facebook api,获取不同尺寸的头像

    我正在使用相对较新的 Facebook 图形 api 我正在获取使用该应用程序的朋友列表及其个人资料照片 我不知道如何修改我发送的参数 以便返回的图片很大 当前返回的默认值很小 我正在使用 newMyFriendsRequest 我发送的参
  • Android 以编程方式停止 toast 通知?

    有没有办法以编程方式停止 Toast 消息 假设我有一个按钮 单击它可以滚动 toast 消息 并且在 onclick 事件中我想停止队列中的所有消息并只显示新消息 我该怎么做 我的代码的简化版本如下 代码 public class Hel
  • Android Studio gradle 构建时间太长

    My 安卓工作室项目过去构建速度更快 但现在需要很长时间才能构建 有什么想法可能导致延误吗 我努力了https stackoverflow com a 27171878 391401 https stackoverflow com a 27
  • Android:非键盘输入法

    我正在尝试为 Android 创建一个不是传统键盘 对应于不同字母的按键行 的 IME 并且我无法找到有关如何执行此操作的有用资源 因为 SDK 中的所有代码示例都使用键盘 API它是内置函数 我在 XML 文件中设计了 IME 界面 就好
  • 如何更改区域设置以使用拉丁塞尔维亚语(而不是西里尔塞尔维亚语)

    塞尔维亚语有拉丁字母和西里尔字母 在 Android 的日期和时间选择器小部件中 显示的塞尔维亚语言区域字母似乎是西里尔字母 如此处所示 我想更改区域设置 以便 Android 小部件使用拉丁塞尔维亚字母 当前的语言 国家代码 产生西里尔字
  • 使用 Android 地图 v2 进行自由绘图

    我有一个地图应用程序 使用新的 v2 Google Maps API for Android 我想做的是允许用户在地图上沿着手指的路径画一条线 我知道我可能需要一个按钮来启用 禁用此功能 因为它显然需要禁用平移 缩放控件 一旦用户画了线 我
  • 即使提供了通知,也无法在前台服务中运行蓝牙扫描超过 10 - 15 秒

    即使应用程序关闭 我也使用服务来保留对 Android 手机的扫描 我使用广播接收器在被杀死时重新启动我的服务 它会重新启动扫描 并且只工作大约 15 秒 然后停止 当我单击 MainActivity 中的 button1 时 我启动了服务

随机推荐

  • React Native 中的 URI 与 URL

    在react native中可以这样做 const somePath https
  • 拖放图像视图不起作用

    My RelativeLayout有图像 我只是想让它在整个布局中可拖动 问题是每次我拖放时 它都会回到原始位置 这是我的 拖拽布局 xml
  • 将彩信标记为以编程方式读取

    是否有办法更新彩信 短信数据库以将消息从已读标记为未读 反之亦然 我尝试过使用 URI 但它们对我不起作用 下面的代码可以帮助我更新彩信是否被标记为已查看 要将其用于 SMS 消息 只需将以下 content mms 替换为 content
  • Mod 重写并传递 URL 作为参数

    我在重写 mod 时遇到了一个小问题 我的一个朋友正在编写一个允许您上传图像的脚本 我们想要做的是允许用户将域名附加到直接图像链接 并且脚本将从提供的 URL 检索图像 例如 如果图像位于 http www test com image j
  • SVG 填充子元素的宽度

    我希望我的容器 SVG 元素能够缩放 以适应其子组元素或在溢出时显示滚动条 我想知道是否有一个 css 属性可以做到这一点 例如 如果标记如下所示 div class wrapper style width 500px div
  • 如何使用伪类选择除第一个和最后一个之外的所有子级?

    在 CSS 中 对于下面所示的示例 如何才能将样式应用于除第一个和最后一个段落之外的所有段落 div class entry p p p p p p p p p p div 我已尝试以下方法来排除第一段 但这不起作用 div entry p
  • OpenCV 的 iPhone 6 相机校准

    我正在使用 OpenCV 开发 iOS 增强现实应用程序 我在创建相机投影矩阵以允许 OpenGL 叠加层直接映射到标记顶部时遇到问题 我觉得这是因为我的 iPhone 6 摄像头没有根据应用程序正确校准 我知道有 OpenCV 代码可以使
  • UIScrollView 覆盖我的子视图的平移手势识别器

    如果我有一个带有子视图的滚动视图 并且子视图有一个平移手势识别器 则滚动视图的平移手势覆盖子视图的平移 我认为我想要的是相反的 所以我拖动一个子视图 它将在滚动视图中平移 但如果我触摸另一个区域 滚动视图将像平常一样平移 有没有简单的方法来
  • 在 Silverlight 拖放中获取放置索引

    This article http themechanicalbride blogspot com 2009 10 silverlight drag drop support part 2 html展示如何对放置事件实现复制操作 我想做同样
  • 在不使用背景颜色的情况下向 HTML 表格单元格添加背景颜色?

    除了背景颜色样式属性之外 还有其他方法可以向表格单元格添加 背景 颜色吗 我有一些表格 其中包含以编程方式生成的文本内容和背景颜色 它们可能会自行更新 我想暂时突出显示某些单元格 想象一下移动的光标 理想情况下不会触及现有代码或干扰背景颜色
  • 如何在设计时打开 WPF 菜单?

    我正在 WPF 中设置菜单样式 并且希望看看它的外观 而无需启动应用程序来打开菜单 有没有办法在设计时保持菜单打开 以便我可以看到菜单项 以便我可以随时看到更改 我目前只有 Visual Studio 2010 可以使用 您可以设置 IsS
  • 绝对值函数“fabsf”给定“double”类型的参数,但具有“float”类型的参数,这可能会导致值截断?

    鉴于此代码示例 CGFloat a 1 CGFloat b 2 CGFloat c fabsf a b 当前的 Xcode beta 编译器给了我这个警告 Absolute value function fabsf given an arg
  • C++ 错误:“成员 Eng​​ine::x 不是类型名称”

    我正在构建一个标准的 4 函数计算器 并且尝试将两个数字作为用户输入的参数传递 在我的 Engine h 类中我已经声明了 float num1 num2 我有这个功能 float Add num1 num2 在这些参数中 num1 和 n
  • MongoDB 空字段或 true/false

    在 MongoDB 上 当我们有 草稿 是 否 已发布 是 否 等字段时 哪个是最好的策略 在所有记录中创建字段并输入 是 否 值 还是将字段放在存在的位置 posts id 1 text hello draft true id 2 tex
  • Azure 配额超出异常

    当向通知中心发送通知时 我收到以下异常 Microsoft ServiceBus Messaging QuotaExceededException 远程 服务器返回错误 禁止 最大数量 通知操作已达到或超过 实际 33360 允许的最大值
  • 如何从文件中删除重复项并写入同一个文件?

    我知道我的标题不太容易解释 但让我尝试在这里解释一下 我有一个文件名test txt其中有一些重复的行 现在 我想做的是删除那些重复的行 同时update test txt与新内容 test txt AAAA BBBB AAAA CCCC
  • Swift:将枚举值转换为字符串?

    给定以下枚举 enum Audience case Public case Friends case Private 我如何获取字符串 Public 来自audience下面常数 let audience Audience Public 获
  • 访问组合框值

    I have a combobox and a button that makes runs a query with the values it gets from combobox but it does not seem to get
  • 绑定到 ItemsControl 的 DataTemplate 内的自定义控件

    我的绑定有问题DataTemplate基于定义的DataType in ItemsControl 当我想绑定到我的自定义用户控件 为了演示目的 我创建了简单的物品类别例如 我有这样的项目集合 public class Item public
  • 将 Textview 放在列表片段之上

    如何在片段顶部添加文本视图 我使用以下适配器来填充列表片段 并且 xml 文件是列表片段中的每一行 我需要在列表视图之上添加一个文本视图 该文本视图必须可以与列表一起滚动 public class Adapter extends BaseA