我有一个ViewFlipper视图,里面有两个视图 -
<ListView
android:dividerHeight="5dip"
android:id="@android:id/list"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:drawSelectorOnTop="false"
android:divider="@android:color/black">
</ListView>
<TextView
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:id="@+id/textView1"
android:layout_width="fill_parent">
</TextView>
</ViewFlipper>
如何编程绘制两个小点(或者与viewFlipper视图中的子视图一样多的点)?
我应该覆盖onDraw()吗?
扩展此ViewFlipper布局的我的活动扩展了ListActivity ...
感谢。
答案 0 :(得分:3)
考虑重写dispatchDraw方法(调用super方法,之后绘制点),因为如果覆盖onDraw,则子项的内容将覆盖您的点。
或者创建水平线性布局的扩展,其中包含顶部的视图翻转器和底部的一些组件,用于管理ImageView以显示点(或手动绘制它们)。
public class CustomViewFlipper extends ViewFlipper {
public TableLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
drawDots(canvas);
}
}