今天做Android开发时,碰到一个非常奇怪的问题,我在一个ViewGroup中,动态创建两个自定义的View,然后对它们进行setVisibility操作,结果悲剧了,自定义的View一点反应都没有。

 

大概的伪代码是这样子的:

MyView extends View {
   
/**************/
   inflate(context, res, rootView);
}

//调用
View v1 = new MyView();
View v2 
= new Myview();

v1.setVisibility(View.GONE);
//根本不起作用
v2.setVisibility(View.VISIBLE);

 

PS:问题已经解决。原来是绑定xml的方式不同造成,换一种就可以解决:

//不OK的方式
inflate(context, res, rootView);


//OK的方式
_view = LayoutInflater.from(context).inflate(res, null);
rootView.addView(_view);

//两种方式都可以正常显示界面,至于根本原因,尚未得知.

 

 

 

相关文章:

  • 2021-11-08
  • 2021-08-01
  • 2022-12-23
  • 2021-07-26
  • 2022-12-23
  • 2021-10-10
  • 2022-12-23
  • 2021-10-05
猜你喜欢
  • 2021-07-20
  • 2022-12-23
  • 2021-11-07
  • 2021-10-17
  • 2021-08-20
  • 2021-07-22
相关资源
相似解决方案