我希望你能帮我翻译以下内容:
感谢您的帮助。
我有一个自定义的列表视图,其中包含两个文本视图和一个单选按钮。
我想将其设置为单选项,但每次点击列表视图上的项目时,它都不会取消其他单选按钮的“选中”状态。
我的xml代码:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/tvMaterialName"
android:layout_width="250dp"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="MaterialName"
android:textSize="35px" />
<TextView
android:id="@+id/tvMaterialNo"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="MaterialNo"
android:textSize="1px"
android:visibility="invisible" />
</LinearLayout>
<RadioButton
android:id="@+id/rdBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false"
android:checked="false" />
</LinearLayout
我的onItemClickListener:
searchList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
LinearLayout item_view = (LinearLayout) v;
RadioButton itemcheck = (RadioButton) item_view
.findViewById(R.id.rdBtn);
itemcheck.setChecked(true);
if (itemcheck.isChecked()) {
itemcheck.setChecked(true);
} else {
itemcheck.setChecked(false);
}
}
});
我在适配器中的getView()方法
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final ViewHolder viewHolder;
final Materials materialItem = getItem(position);
parent.setClickable(true);
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = inflater.inflate(R.layout.d, null, false);
viewHolder = new ViewHolder();
viewHolder.tvMaterialName = (TextView) convertView
.findViewById(R.id.tvMaterialName);
viewHolder.tvMaterialNo = (TextView) convertView
.findViewById(R.id.tvMaterialNo);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.tvMaterialName.setText(materialItem.getMaterialName());
viewHolder.tvMaterialNo.setText(materialItem.getMaterialNo());
return convertView;
感谢您的帮助。
getView()
方法的代码。 - user370305