2012-10-18 38 views
1

如何在Android中实现自定义视图,以便正确支持消息队列或使用消息队列?Android:编写支持消息队列的自定义视图

我在试图模拟内置视图的行为,以便我可以正常/正常地用onCreate中的数据更新自定义视图。

目前,我的自定义视图具有专门的设置/更新功能来将数据放入其中。这个问题是,我的视图的子视图没有被初始化,直到第一次调用onMeasure,这是onCreate退出之后(我认为这是内置的方式)。

因此,我想知道一般策略是什么(即,要覆盖哪些方法)从onCreate更新自定义视图,以便更新进入消息队列并在正确地到达视图之后实例化(就像嵌入式)?

谢谢。

回答

1

View.post()

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    final TextView hello = ((TextView) findViewById(R.id.hello)); 
    hello.post(new Runnable() { 
     @Override 
     public void run() { 
      hello.setText("Hello World!"); 
     } 
    }); 
} 
+0

天哪,如果这个工程我会很激动。非常感谢。 – samosaris

+0

不错! onMeasure会在发布的可运行之前始终启动(当onCreate或onResume退出时)吗? – samosaris