【发布时间】:2017-11-23 22:25:15
【问题描述】:
编辑:本意是问“为什么它在 setOnClickListener 中起作用”,但很快就找到了。 https://stackoverflow.com/a/21926714/6474462
旧: 在玩 ObjectAnimator 时发现 LinearLayout getHeight() 返回 0,但在 setOnClickListener(after click) 内部确实返回了 true 值,这是如何工作的?
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final LinearLayout linearLayout = (LinearLayout) findViewById(R.id.main_linear);
TextView textView1 = (TextView) findViewById(R.id.textview1);
final TextView textView2 = (TextView) findViewById(R.id.textview2);
int viewHeight1 = linearLayout.getHeight();
textView1.setText("viewHeight1: " + viewHeight1);
textView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int viewHeight2 = linearLayout.getHeight();
textView2.setText("viewHeight2: " + viewHeight2);
}
});
}
}
【问题讨论】:
标签: android android-linearlayout onclicklistener