Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从同一网格的另一项修改网格文本视图项_Android_Arrays_Gridview - Fatal编程技术网

Android 从同一网格的另一项修改网格文本视图项

Android 从同一网格的另一项修改网格文本视图项,android,arrays,gridview,Android,Arrays,Gridview,我想在网格中创建一些文本视图的单选按钮效果,因此当单击一个文本视图时,文本视图文本会更改,但如果单击另一个文本视图,则之前单击的文本视图将再次变为空白,更改最后单击的项的文本 private Hay_nohay_familia[] datos = new Hay_nohay_familia[]{ new Hay_nohay_familia("HAY", ""), new Hay_nohay_familia("NO HAY",""), new Ha

我想在网格中创建一些文本视图的单选按钮效果,因此当单击一个文本视图时,文本视图文本会更改,但如果单击另一个文本视图,则之前单击的文本视图将再次变为空白,更改最后单击的项的文本

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);
            }


        }
问题是,我无法从onitemclick访问其他文本视图文本,以便再次将其设置为空。我提出了一些想法,比如动态更改数组数据,在刷新适配器并将所有其他适配器设置为默认文本后,从自定义适配器调用的函数中为单击的textview提供我想要的日期值,但我对这方面还不熟悉,我也不知道如何修改该数组

PD:添加适配器。notifyDataSetChanged;在onitemclick内部不起作用,因为它还清理我要更改的文本视图


谢谢

在烧死我的头后,我已经找到了答案

我曾经

grid.getChildAt(position)
访问其他项目视图,然后访问其相应的文本视图