解決進入該頁面直接顯示中的listview而不是從頁面最頂端開始顯示
在setAdapter後調用listview的smoothScrollTo(0,20);android
解決listview只能顯示一條 須要重寫listview
public class MyListView extends ListView {
public MyListView(Context context) {
super(context);
}ide
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
}ui
public MyListView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}this
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public MyListView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}get
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2
, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}io
viewpager顯示不全問題
只能給viewpager設置固定的高度
android:layout_height="500dp"event
Viewpager的左右滑動焦點問題及滑動到第二個頁面上下沒法滑動問題class
重寫Viewpager
public class SViewPager extends ViewPager {List
private boolean canScroll;方法
public SViewPager(Context context) {
super(context);
canScroll = false;
}
public SViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
canScroll = false;
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
if (canScroll) {
try {
return super.onInterceptTouchEvent(ev);
} catch (IllegalArgumentException e) {
e.printStackTrace();
return false;
}
}
return false;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if (canScroll) {
return super.onTouchEvent(event);
}
return false;
}
public void toggleLock() {
canScroll = !canScroll;
}
public void setCanScroll(boolean canScroll) {
this.canScroll = canScroll;
}
public boolean isCanScroll() {
return canScroll;
}
}在設置adapter以後調用setCanScroll(true);方法