1、自定义可适应ScrollView的ListView
import android.content.Context;
import android.util.AttributeSet;
import android.widget.ListView;
public class ListViewForScrollView extends ListView {
public ListViewForScrollView(Context context) {
super(context);
}
public ListViewForScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public ListViewForScrollView(Context context, AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
}
@Override
/**
* 重写该方法,达到使ListView适应ScrollView的效果
*/
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
2、手动把ScrollView滚动至最顶端。
scrollView = (ScrollView) findViewById(R.id.act_solution_4_sv);
scrollView .smoothScrollTo(0, 0);
3、<注意>有的地方有可能会有点击事件,出现闪屏
解决办法:
android:descendantFocusability="blocksDescendants"