Android 第一次在列表项上单击文本颜色不更改
我在片段中有一个自定义列表视图,在项目上单击“文本颜色更改”并运行字幕,但在第一次项目上单击“所有东西都不工作”、“没有字幕或没有文本颜色更改”,在第二次项目上单击“两者都正常工作”。请帮忙Android 第一次在列表项上单击文本颜色不更改,android,listview,baseadapter,onitemclick,Android,Listview,Baseadapter,Onitemclick,我在片段中有一个自定义列表视图,在项目上单击“文本颜色更改”并运行字幕,但在第一次项目上单击“所有东西都不工作”、“没有字幕或没有文本颜色更改”,在第二次项目上单击“两者都正常工作”。请帮忙 mainListViews.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?>
mainListViews.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
textView = (TextView) view.findViewById(R.id.textView);
String text = textView.getText().toString();
song_namef.setText(text);
setItemNormal();
View rowView = view;
views=rowView;
setItemSelected(rowView);
}});
public void setItemSelected(View view){
View rowView = view;
TextView tv = (TextView)rowView.findViewById(R.id.textView);
tv.setTextColor(Color.WHITE);
tv.setEllipsize(TextUtils.TruncateAt.MARQUEE);
tv.setSingleLine(true);
tv.setHorizontallyScrolling(true);
tv.setSelected(true);
tv.requestFocus();
}
public void setItemNormal()
{
for (int i=0; i< mainListViews.getChildCount(); i++)
{
View v = mainListViews.getChildAt(i);
TextView txtview = ((TextView)v.findViewById(R.id.textView));
txtview.setSelected(false);
txtview.setSingleLine(true);
txtview.setTextColor(getResources().getColor(R.color.tabsScrollColor));
}}
mainListViews.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
textView=(textView)view.findViewById(R.id.textView);
String text=textView.getText().toString();
song_namef.setText(文本);
setItemNormal();
视图行视图=视图;
视图=行视图;
setItemSelected(行视图);
}});
已选择公共void setItemSelected(视图){
视图行视图=视图;
TextView tv=(TextView)rowView.findViewById(R.id.TextView);
电视.彩色(彩色.白色);
tv.setEllipsize(TextUtils.TruncateAt.MARQUEE);
tv.setSingleLine(真);
tv.sethorizontallyscroling(真);
tv.setSelected(true);
tv.requestFocus();
}
公共void setItemNormal()
{
对于(int i=0;i
布局:
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/tools"
android:id="@+id/card_view"
android:layout_height="80dp"
android:layout_width="match_parent"
android:layout_marginBottom="16dp"
app:cardCornerRadius="16dp"
app:cardElevation="16dp"
card_view:cardCornerRadius="16dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
app:cardPreventCornerOverlap="false"
app:cardUseCompatPadding="true"
card_view:cardBackgroundColor="@android:color/black"
android:divider="#B49238"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/cancel"
android:layout_marginLeft="1200dp"
android:layout_marginTop="18dp"
android:id="@+id/imageView19" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_toStartOf="@+id/imageView16">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Large Text"
android:id="@+id/textView"
android:textSize="30dp"
android:singleLine="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_marginStart="100dp"
android:layout_marginTop="18dip"
android:textColor="@color/tabsScrollColor"
android:layout_alignParentTop="true"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text=""
android:id="@+id/textView11" />
</LinearLayout>
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_marginEnd="10dp"
android:id="@+id/button"
android:src="@drawable/musicalbum"
android:padding="5dp"
android:focusable="false"
android:layout_marginStart="10dp"
android:layout_marginTop="7dip"
android:layout_alignParentRight="true"
/>
将android:DegenantFocusability=“BlocksDescents”添加到行项目中 它应该很好用
如果您仍然遇到问题,请告诉我,将android:DegenantFocusability=“BlocksDescents”添加到您的行项目中 它应该很好用
如果您仍然收到问题,请告诉我它不起作用!!我尝试将此应用于我的文本视图!!不要在文本视图上应用你应该应用根视图我在根视图中尝试,即我的卡片视图!!但不走运:(发布的xml布局是否是listview中的行布局?是的。在这个根线性布局上方,我使用的是cardview和image!!它不起作用!!我尝试在我的textview中应用它!!不要在textview中应用你应该应用根视图我尝试在根视图中,即我的卡片视图!!但不走运:(发布的xml布局是您在listview中的行布局吗?是的。在这个根线性布局之上,我使用的是cardview和image!!