Android 具有多个项目的列表视图中的选取框文本

Android Marquee Text In Listview with Multiple Item

任何人都可以帮助我如何使用选取框文本在列表视图中水平滚动 textview。我在简单的 textview 中使用选取框文本,当我在 listview textview 中使用相同的概念时它工作正常,它不是 working/scrolling 请帮助我。!谢谢
这是我的 xml 单列表项文件

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

    <TextView
        android:layout_width="340dp"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:gravity="center_vertical"
        android:id="@+id/list_text"
        android:marqueeRepeatLimit="marquee_forever"
        android:scrollHorizontally="true"
        android:textColor="#cc0000"
        android:singleLine="true" />

</LinearLayout>


这是我的 Java 文件

LayoutInflater inflater =(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            View child = inflater.inflate(R.layout.list_item, null);<br>
            TextView text=(TextView)child.findViewById(R.id.list_text);<br>
            text.setSelected(true);<br>
            arrayAdapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.list_item,R.id.list_text, s);<br>
            listView.setAdapter(arrayAdapter);

在您的代码中,您膨胀了一个与项目视图类型相同但不是项目视图的视图。要修改项目视图,您需要重写适配器的 getView() 方法。试试下面的代码:

        arrayAdapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.list_item, R.id.list_text, s){
            @NonNull
            @Override
            public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
                convertView = super.getView(position, convertView, parent);
                TextView tv = convertView.findViewById(R.id.list_text);
                tv.setSelected(true);
                return convertView;
            }
        };
        list.setAdapter(arrayAdapter);