android:动态列表视图焦点每次从其他项目失去焦点后都会返回第一个项目

2024-03-23

我使用两个列表视图的 list_A 和 list_B ,它们具有相同数量的列表项,如图 1 所示,其中 list_B 是自定义数组适配器,其中每个项目作为列表(字符串)动态创建所需宽度的按钮。

public class LarrayAdapter extends ArrayAdapter<List<String>> {
private final Context context;
private List<List<String>> list;

public LarrayAdapter(Context context, List<List<String>> list) {
    super(context, R.layout.hrowlayout, list);
    this.context = context;
    this.list = list;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    HorizontalScrollView sv = (HorizontalScrollView) inflater.inflate(
            R.layout.hrowlayout, parent, false);
    LinearLayout rl1 = (LinearLayout) sv.findViewById(R.id.ll);

    List<String> name2 = list.get(position);

    final Button[] b = new Button[name2.size()];

    float x;
    for (int i = 0; i < name2.size(); i++) {
        b[i] = new Button(rl1.getContext());
        b[i].setGravity(Gravity.CENTER);
        b[i].setBackgroundResource(R.drawable.bakground_list);
        b[i].setSingleLine(true);
        String einfo = name2.get(i);
        String[] einfosplit = einfo.split("-",2);
        x = calwidth(Integer.parseInt(einfosplit[1]));
        LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams((int) x, 80);

        params2.topMargin = 15;
        b[i].setTextSize(18);
        b[i].setTextColor(Color.WHITE);
        b[i].setText(einfosplit[0]);
        b[i].setLayoutParams(params2);

        final int z = i;
        b[i].setOnFocusChangeListener(new View.OnFocusChangeListener(){
            @Override
            public void onFocusChange(View v, boolean hasFocus){
                if(hasFocus){
                    b[z].setTextColor(0xff7BCFFC);
                }
                else
                    b[z].setTextColor(Color.WHITE);
            }
        } );


        rl1.addView(b[i],params2);
    }

    sv.scrollTo(0, 0);
    return sv;
}

public int calwidth(int dur){
    return (253/3)*dur;
}
}

面临的问题:当从 list_A 导航到 list_B 时,我想将 list_B 的焦点设置到 list_A 项目的相同位置,为此我正在使用

list_B.setSelection(list_A_cur);//list_A_cur gives position of list_A focused item
list_B.setFocusable(true);
list_B.requestFocus();

list_B 项目正确获得焦点,如图 1 所示,但项目在一段时间后失去焦点,每次都返回到第一个项目,如图 2 所示,请帮助...谢谢,

enter image description here figure 1

enter image description here figure 2


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android:动态列表视图焦点每次从其他项目失去焦点后都会返回第一个项目 的相关文章

  • 使用同一个侦听器的多个活动

    我有 4 个活动 它们都包含一个 xml 页脚 其中包含 4 个按钮 每个活动一个 我现在想为这些按钮设置 onclicklistener 它是页脚中的自制菜单 问题是 如何使用侦听器以便重用代码 我有两个想法 创建一个实现 onclick
  • 虚拟回调接口

    在 Eclipse 为您创建的来自 Google 的示例主从流代码中 片段中包含以下内容 private Callbacks mCallbacks sDummyCallbacks public interface Callbacks pub
  • 我无法再在后台应用程序中接收任何 FCM 消息

    当应用程序处于后台时 我无法再在应用程序中接收任何数据消息 请注意 直到最近它在我的应用程序中都运行良好 也许在我的开发环境最近更新后它停止工作了 我不能说 所以我尝试用快速入门 android 项目 https github com fi
  • 无法在 Android Studio 中导出签名的 APK

    当我使用keytool list keystore path to keyfile jks并提供我的密码 我可以看到那里的条目 但是当我在尝试使用相同的密码生成签名的 APK 时使用相同的密码时 我收到错误 无法加载密钥库 密钥库被篡改 或
  • 如何使用 Google 的 GithubBrowserSample 方法在片段之间共享视图模型?

    我对 Android 架构组件的使用非常陌生 因此我决定使用 GithubBrowserSample 来构建我的应用程序来实现我的许多用例 但我有一个问题 我不知道使用这种方法在片段之间共享视图模型的正确方法是什么 我想共享视图模型 因为我
  • 使用 DataBinding 测试片段时膨胀类 Fragment 时出错

    有人可以帮我解决这个问题吗 在我的测试中 我想检查登录按钮是否显示在起始页上 今天我已经为这个错误苦苦挣扎了一段时间 我不知道应该如何解决它 我在这里错过了什么 也许这个问题与这个问题有些相似 Espresso 测试失败 并显示 java
  • 什么是 Android 测试协调器?

    谷歌最近发布了Android测试支持库1 0 读完后overview https android developers googleblog com 2017 07 android testing support library 10 is
  • Toast 消息消失后​​完成活动吗?

    有谁知道 是否有可能对 Toast 消息执行某些操作 在我的情况下完成活动 将被关闭 您只需创建一个Thread持续时间只要Toast显示 然后您就可以完成您的Activity public void onCreate Bundle sav
  • Android 认为我没有关闭数据库!为什么?

    我有一个 SQLiteDatabase 数据成员 我在 onCreate 中初始化它 并在 onPause onStop 和 onDestroy 中调用 close 它在 onResume 中重新初始化 它似乎运行得很好 但当我查看调试器时
  • 我在 android studio 中使用 kotlin 时出现错误

    为什么会出现这个错误 09 12 16 36 31 502 1886 1886 com getloction nourmedhat smartgate getlocation E AndroidRuntime 致命异常 main 进程 co
  • Android - 状态栏阻止全屏

    我的应用程序启动时可以全屏正确运行 然而 在最小化然后返回应用程序后 状态栏会弹出 并将我的视图向下推一点 如何防止状态栏移动我的视图 这是我的布局
  • 使用 Proguard 通过 Dropbox.com 库混淆 Android 应用程序

    我刚刚创建了一个需要 Dropbox com API 库的 Android 应用程序 我现在尝试在 发布 模式下构建应用程序 并希望在代码上运行混淆器以对其进行混淆 但是 每当我尝试运行 Proguard 时 都会收到以下错误 Progua
  • Expresso 的 Android 测试首选项片段

    我在通过 Expresso 测试我的代码时遇到问题 我写了这段代码 public class SettingsActivity extends Activity Override protected void onCreate Bundle
  • 了解应用程序在后台时何时收到 Firebase 消息

    我知道这个标题有同样的问题 但不幸的是它没有得到正确的回答 它被接受了 here https stackoverflow com questions 37711082 how to handle notification when app
  • 通过 Gradle 和 Android Studio 构建和运行应用程序比通过 Eclipse 慢

    我有一个多项目 10 个模块 每次构建大约需要 20 30 秒 当我在 Android Studio 中按 运行 时 每次都必须等待才能重建应用程序 这非常慢 是否可以在 Android Studio 中自动化构建过程 或者您对如何加快此过
  • XML 配置中的 screenName 不起作用

    我刚刚在我的应用程序中添加了对 Google Analytics 分析 的支持 但我无法
  • 动态更改按钮上的图像视图

    在我的应用程序中 我有按钮和ImageView 当我按下按钮时我想改变ImageView 我的可绘制文件夹中有 5 张图像 按下按钮时 ImageView 根据按钮单击一张一张地更改图像 我想要它的解决方案 感谢任何可以提供帮助的人 维护一
  • 如何从DataSource.Factory获取数据

    我必须调用此方法才能获取所有人员 我根本无法修改这个方法 Query SELECT FROM PERSON TABLE ORDER BY NAME DESC abstract fun getElements DataSource Facto
  • Android 的代码覆盖率[重复]

    这个问题在这里已经有答案了 可能的重复 Android测试代码覆盖率 Eclipse https stackoverflow com questions 3282702 android test code coverage eclipse
  • 如何用LoaderManager自动重新查询

    我有一个应用程序显示来自 SQLite DB 的数据 并且数据不断变化 所以显然 我认为我应该使用 LoaderManager 来显示数据 我读过一些关于将 LoaderManager 与 SQLite 结合使用的内容 然后看到了亚历克斯

随机推荐

  • 在 GCP App Engine 标准环境上安装 cmake 的解决方法

    我需要安装dlib封装在应用程序引擎标准对于需要的应用程序cmake 以下是我在安装时遇到的错误 我尝试添加cmake and cmake setup在requirements txt中但没有用 ERROR Failed to build
  • 在 c# 2008 中使用正则表达式验证的电话号码验证?

    我想验证这种格式的电话号码 即 919981424199 91231456789 我正在使用 Asp net c 2008 来开发网站 为此 我使用了正则表达式验证控件 gt 属性 gt 验证表达式 0 9 0 9 但这接受号码为91998
  • Emacs 确定键盘布局

    Emacs 有没有办法检测当前的键盘布局 我经常用英语和德语写文本 切换 Win 操作系统 键盘布局 但是 某些功能 例如 C Y 应始终位于相同的物理键上 无论我当前使用哪种语言进行输入 Thanks 考虑使用M x set input
  • 使用 Firebase 和 APNs 身份验证密钥进行生产推送通知

    在 TestFlight 上测试我的应用程序时 我注意到我没有收到推送通知 我已确认 当从 Xcode 加载构建时 我可以收到从云函数和 firebase 控制台发起的通知 我引用了其他类似的问题 但没有一个反映我正在处理的确切问题 在 F
  • 如何将文件保存到 MongoDB?

    我想将用户选择的文件保存到 MongoDB 如何正确地将文件添加到 BSON 对象以便将其添加到 MongoDB 如果我的方法不正确 请指出正确的方向 下面是客户端代码 此 jQuery 函数收集每个输入字段上的文本 需要文件部分的帮助 并
  • Spring Boot 几分钟后停止解析视图

    我有一个 Spring Boot 应用程序 它突然停止解析视图 而是向我抛出 404 错误 这些是我的依赖项
  • 如何从代码隐藏中确定 ASP.NET 生成的 ID?

    在 ASP NET 中 当您为标签提供 ID 时 它会根据控件层次结构为该元素生成唯一的 HTML id 即
  • 如何在未聚焦时保持 WPF 文本框选择?

    我想在 WPF TextBox 中显示一个选择 即使它没有焦点 我怎样才能做到这一点 我已将此解决方案用于 RichTextBox 但我认为它也适用于标准文本框 基本上 您需要处理 LostFocus 事件并将其标记为已处理 protect
  • d3 强制定向图删除文本光标

    当我向 d3 力定向图形布局中的节点添加文本时 当我将鼠标悬停在该节点上时 鼠标指针会更改为文本光标 有没有办法避免这种情况并始终让它保持常规指针 普通指针 文本光标 这是一个fiddle http jsfiddle net pkerped
  • 在哪里可以找到 Java API 代码[重复]

    这个问题在这里已经有答案了 我听说Java是开源代码 那么 我可以获得 Java API 编码方法吗 如果是这样 请告诉我在哪里可以获取 Java API 的源代码 您可以在src zip在JDK安装目录下 From Java docs h
  • 使用应用程序中存储的图像的本地路径将 Web 应用程序加载到 Web 视图中

    我希望能够创建一个使用 WebView 请求 url 的应用程序 从外部 Web 应用程序返回 html 和 css 引用作为实际应用程序中的资产的图像 这 想法基本上是加速一切 以便图像永远不必 被下载 这是一个简化的示例 服务器 HTM
  • 不考虑锁的文件只读访问 (C#)

    如何打开 使用 C 已打开的文件 例如在 MS Word 中 我想如果我打开文件进行读取访问 例如 FileStream f new FileStream filename FileMode Open FileAccess ReadWrit
  • 如何知道分数中的循环小数?

    我已经知道分数何时是重复小数 这是函数 public bool IsRepeatingDecimal get if Numerator Denominator 0 return false var primes MathAlgorithms
  • Tradingview Pine-Script:如何仅绘制最后 x 个周期

    我只想绘制最后 x 个周期的指标 我怎么做 如果我可以进行时间操作 从plotStartDate中减去x period 也许我可以使用以下代码 period timeframe ismonthly or timeframe isweekly
  • SPLoginViewController 用于记住凭据

    在 CocoaLibSpotify 中 如何让 SPLogin ViewController 存储凭据 以便用户稍后可以通过 PSSession sharedSession attemptsLogin WithStoredCredentia
  • Laravel 5.5 使用自定义消息进行验证

    我正在我的 laravel 应用程序中处理密码更改表单 我想将验证器与自定义错误消息一起使用 我的代码如下所示 rules username gt required max 255 oldpassword gt required max 2
  • 与模块相比,使用具有静态函数的类有什么优势吗?

    我想要一些建议 我正在使用打字稿来创建对话框 一旦创建 它们就会自行处理 因为它们有自己的提交按钮并进行自己的检查 以下两种编码方式有什么优点或缺点吗 到目前为止 我唯一能看到的是 带有导出的模块方法允许我隐藏一个函数 并在不导出它的情况下
  • 如何更改 bookdown pdf 中的字体和磅值?

    我正在写一个文档 严格要求使用arial 12点 我在 bookdown 中修改了输出 yml 如下所示 site bookdown bookdown site fontsize 12pt fontfamily arial document
  • 水豚 fill_in 只适用于字段 id,为什么?

    在运行我的 rspec 测试时 我收到错误 Capybara ElementNotFound 无法找到字段 名字 我的rspec测试如下 describe with valid information do before do puts p
  • android:动态列表视图焦点每次从其他项目失去焦点后都会返回第一个项目

    我使用两个列表视图的 list A 和 list B 它们具有相同数量的列表项 如图 1 所示 其中 list B 是自定义数组适配器 其中每个项目作为列表 字符串 动态创建所需宽度的按钮 public class LarrayAdapte