这是在创建我的活动时,在设置内容视图后,我调用了LoadButton()。
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Loadbuttons();
}
public void LoadButtonss()
{
Here I am fetching data from database ,and plotting 50 buttons dynamically
}
所以我的问题是:加载活动需要时间。
任何想法如何在加载完整活动后加载LoadButtons()。它不应该等待ButtonLoad()函数。
任何想法如何做到这一点?
答案 0 :(得分:1)
将此代码粘贴到您的活动类块中:
@Override
protected void onStart() {
// TODO Auto-generated method stub
LoadButtons();
super.onStart();
}
答案 1 :(得分:0)
根据活动生命周期,您必须在onStart覆盖方法中调用LoadButtons。因为活动在这种状态下可见。
答案 2 :(得分:0)
我会尝试这个:在onCreate中加载按钮并设置View隐藏。在onResume中再次显示它。
View v;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
v= findViewById(R.layout.main);
v.setVisibility(View.INVISIBLE);
Loadbuttons();
}
@Override
protected void onResume() {
v.setVisibility(View.VISIBLE);
super.onResume();
}
public void LoadButtons()
{
FrameLayout layout = (FrameLayout) findViewById(R.id.MarkerLinearlayout);
//Here I am fetching data from database ,and plotting 50 buttons dynamically
}
答案 3 :(得分:0)
您可以将按钮设置为不可见,如果您获取数据,则可以通过AsyncThread更新UI。这不是最好的方式,但它的工作原理。否则使用而不是Buttons一个CustomListView。