我有一个LinearLayout
,并且我在其中充气CardView
:
final LinearLayout itineraryDetailLL = (LinearLayout) findViewById(R.id.itineraryDetailLinearlayout);
final View childView = getLayoutInflater().inflate(R.layout.cardview, null);
itineraryDetailLL.addView(childView);
子视图的通胀是在按下按钮时完成的。我想在新的cardview充气时滚动到屏幕的底部。我是这样做的:
ScrollView scrollview = ((ScrollView) findViewById(R.id.masterScrollView));
scrollview.fullScroll(View.FOCUS_DOWN);
但这会滚动到屏幕中间的某个位置而不是底部。我做错了什么?
答案 0 :(得分:3)
你必须在下一帧发布一个事件,当这个ScrollView
布局时:
scrollView.post(new Runnable() {
@Override
public void run() {
scrollView.fullScroll(ScrollView.FOCUS_DOWN);
}
});