我创建了一个自定义的viewgroup readpage,在活动中使用它
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
pager=(ReadPage)findViewById(R.id.readpage);
pager.addArticle("...");
}
而addarticle需要视图的宽度和高度
public void addArticle(String s){
articles.add(new Article(s,getMeasuredWidth(),getMeasuredHeight()));
}
但当时的测量值和测量值是0。
所以我想知道在哪个状态下,视图会被测量,这样我就能得到它在屏幕上显示的正确值。
最佳答案
这个答案可能会告诉你你需要什么:https://stackoverflow.com/a/1016941/213528
你可能会这样使用它:
private int WIDTH;
private int HEIGHT;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
WIDTH = size.x;
HEIGHT = size.y;
pager = (ReadPage)findViewById(R.id.readpage);
pager.addArticle("...");
}
// ...
public void addArticle(String s){
articles.add(new Article(s, WIDTH, HEIGHT));
}