我创建一个列表视图,并在我的自定义对话框中实现该列表视图.列表视图使用数组适配器,在我的数组适配器中,我使用自己的布局和所需的颜色.代码如下.
ListVIEw = new ListVIEw(context); ArrayAdapter<String> adapter = new ArrayAdapter<String>(Loged.this, R.layout.my_spinner_layout, items);ListVIEw.setAdapter(adapter);
在这里,单击我的列表项的监听器工作正常.
问题现在开始了.我的自定义警报对话框中需要一个列表视图,每行包含一个单选按钮.我使用相同的方法.这是我的代码.
ListVIEw = new ListVIEw(context); ArrayAdapter<String>adapter = new ArrayAdapter<String>(context,R.layout.my_single_choice_layout, choice); ListVIEw.setAdapter(adapter);
这里可以同时检查所有radiobuttons.我的听众工作不正常
my_spinner_layout_xml
<?xml version="1.0" enCoding="utf-8"?><TextVIEw xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:paddingtop="10dp" androID:paddingBottom="10dp" androID:paddingleft="10dp" />
和my_single_choice_layout.xml
<?xml version="1.0" enCoding="utf-8"?><Radiobutton xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:layout_wIDth="fill_parent" androID:ID="@+ID/my_choice_radio" androID:layout_height="match_parent" androID:button="@null" androID:drawableRight="@androID:drawable/btn_radio" androID:text="Option" ></Radiobutton>
解决方法:
试试这个:
List.setAdapter(new EfficIEntAdapter(context,R.layout.my_single_choice_layout, choice));
然后创建一个类
public class EfficIEntAdapter extends ArrayAdapter { private LayoutInflater mInflater; private String[] mStrings; private int mVIEwResourceID; public EfficIEntAdapter(Context ctx, int vIEwResourceID,String[] strings) { super(ctx, vIEwResourceID, strings); mInflater = (LayoutInflater)ctx.getSystemService( Context.LAYOUT_INFLATER_SERVICE); mStrings = strings; mVIEwResourceID = vIEwResourceID; } @OverrIDe public int getCount() { return mStrings.length; } @OverrIDe public String getItem(int position) { return mStrings[position]; } @OverrIDe public long getItemID(int position) { return position; } @OverrIDe public VIEw getVIEw(int position, VIEw convertVIEw, VIEwGroup parent) { convertVIEw = mInflater.inflate(mVIEwResourceID, null); convertVIEw.setMinimumHeight(132); TextVIEw tv = (TextVIEw)convertVIEw.findVIEwByID(R.ID.option_text); //Give ID to your textvIEw tv.setText(mStrings[position]); tv.setTextcolor(color.RED); Radiobuttons r=(Radiobuttons)convertvIEw.findvIEwByID(Radio button ID); r.setonCheckedListener(new ur Listener(){/////////Do whatever you wanna do overhere}); return convertVIEw; } }
希望能帮助到你.
总结以上是内存溢出为你收集整理的android – 更改数组适配器中列表项的文本颜色全部内容,希望文章能够帮你解决android – 更改数组适配器中列表项的文本颜色所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)