0
我想使網格內的某些文本視圖具有單選按鈕效果,因此當單擊textview時,textview文本會更改,但如果您單擊其他textview,點擊之前再次變爲空白,改變最後點擊的項目的文字。從同一個網格的另一個項目中修改網格textview項目
private Hay_nohay_familia[] datos = new Hay_nohay_familia[]{
new Hay_nohay_familia("HAY", ""),
new Hay_nohay_familia("NO HAY",""),
new Hay_nohay_familia("FAMILIA", ""),
new Hay_nohay_familia("", "1"),
new Hay_nohay_familia("", "1"),
new Hay_nohay_familia("", "1"),};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.prueba);
final GridView grid;
final AdaptadorFecha adaptador2 =
new AdaptadorFecha(this);
grid = (GridView)findViewById(R.id.hay_nohay_familia);
grid.setAdapter(adaptador2);
grid.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
TextView fecha = ((TextView)v.findViewById(R.id.fecha));
fecha.setText(new SimpleDateFormat("dd/MM/yy").format(new Date()));
}
});
}
class AdaptadorFecha extends ArrayAdapter<Hay_nohay_familia> {
Activity context;
AdaptadorFecha(Activity context) {
super(context, R.layout.grd_radio, datos);
this.context = context;
}
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View item = inflater.inflate(R.layout.grd_radio, null);
TextView hay = (TextView)item.findViewById(R.id.hay_nohay_familia);
hay.setText(datos[position].getDatos());
TextView fecha = (TextView)item.findViewById(R.id.fecha);
fecha.setText(datos[position].getFecha());
return(item);
}
}
問題是我無法訪問其他textite文本從onitemclick爲了設置它們再次空白。我想出了一些想法,例如動態改變數組數據,並在刷新適配器並將所有其他文件轉換爲默認文本後,給出我希望從我的自定義適配器調用的函數中單擊的文本視圖的日期值,但是我對此我不知道如何修改該數組。
PD:Adding adapter.notifyDataSetChanged();在onitemclick內沒有工作,因爲它也清理了我想改變的textview。
謝謝!