《Android开发卷——自定义日期选择器(二)》
(小米手机) (中兴手机)
在上一篇中,我介绍了一般公司都会自定义时间日期选择器,并结合自己所做的项目给大家参考。
工作实录之《Android开发卷——自定义日期选择器(一)》链接:http://blog.csdn.net/chillax_li/article/details/19047913
这里,我在之前的基础上做了修改,弄成对话框形式,更神似于Google提供的日期选择器API,项目部署跟上一篇是一样的。
自定义对话框类
public class TestDialog extends Dialog{
private Context context;
private int style;
public TestDialog(Context context) {
super(context);
this.context = context;
}
public TestDialog(Context context,int style) {
super(context);
this.context = context;
this.style = style;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setContentView(R.layout.dialog);
NumberPicker np1 = (NumberPicker) findViewById(R.id.np1);
NumberPicker np2 = (NumberPicker) findViewById(R.id.np2);
NumberPicker np3 = (NumberPicker) findViewById(R.id.np3);
np1.setMaxValue(2999);
np1.setMinValue(1000);
np1.setValue(1999);
np2.setMaxValue(12);
np2.setMinValue(1);
np3.setMaxValue(31);
np3.setMinValue(1);
}
@Override
public void show() {
// TODO Auto-generated method stub
super.show();
}
}
自定义对话框布局
<LinearLayout
android:id="@+id/dialog_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:paddingLeft="3dp" >
<NumberPicker
android:id="@+id/np1"
android:layout_width="80dp"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal"
android:textSize="20dp"
android:text="年"/>
<NumberPicker
android:id="@+id/np2"
android:layout_width="80dp"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal"
android:textSize="20dp"
android:text="月"/>
<NumberPicker
android:id="@+id/np3"
android:layout_width="80dp"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal"
android:textSize="20dp"
android:text="日"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:padding="5dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.1" />
<Button
android:id="@+id/dialog_confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="#00000000"
android:text="确定" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.4" />
<Button
android:id="@+id/dialog_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="#00000000"
android:text="取消" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.1" />
</LinearLayout>
当然,项目中也还有存在不足,两个按钮的单击事件,本人在这里偷懒了,没有添加上去。大家可以自己添加上去,完善它。
详见《Android开发卷——自定义日期选择器(三)》:http://blog.csdn.net/chillax_li/article/details/19212895
下面链出项目源码地址:http://download.csdn.net/detail/chillax_li/6920631
尊重原创,转载请注明出处:http://blog.csdn.net/chillax_li/article/details/19172899