要解决Android的ScrollView在更改子元素的可见性后会跳跃的问题,可以尝试以下方法:
LinearLayout linearLayout = findViewById(R.id.linearLayout);
View childView = findViewById(R.id.childView);
// 设置子元素的可见性为GONE
childView.setVisibility(View.GONE);
// 添加或移除子元素
linearLayout.addView(childView);
linearLayout.removeView(childView);
ScrollView scrollView = findViewById(R.id.scrollView);
View childView = findViewById(R.id.childView);
scrollView.post(new Runnable() {
@Override
public void run() {
// 设置子元素的可见性为GONE
childView.setVisibility(View.GONE);
}
});
ScrollView scrollView = findViewById(R.id.scrollView);
View childView = findViewById(R.id.childView);
// 设置子元素的可见性为GONE
childView.setVisibility(View.GONE);
// 平滑滚动到指定位置
scrollView.smoothScrollTo(0, childView.getTop());
通过以上方法,可以解决Android的ScrollView在更改子元素的可见性后跳跃的问题。根据具体情况选择合适的方法进行实现。