【发布时间】:2017-03-04 01:39:27
【问题描述】:
我正在尝试让时间选择器以横向显示完整的时钟。 TimePicker 在 GridLayout 中。它不会以DialogFragment 或TimePickerDialog 的形式覆盖屏幕。
目前,这是横向显示的内容:
如您所见,您无法选择时间,只能选择默认时间。我试图让它像纵向一样显示时钟(有效):
时间选择器的布局:
<package.name.ScrollableTimePicker
android:id="@+id/time_picker"
android:layout_height="wrap_content"
android:layout_width="match_parent" />
扩展TimePicker的类:
public class ScrollableTimePicker extends TimePicker {
public ScrollableTimePicker(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public ScrollableTimePicker(Context context, AttributeSet attrs) {
super(context, attrs);
}
public ScrollableTimePicker(Context context) {
super(context);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
// Keeps events to time picker
if (ev.getActionMasked() == MotionEvent.ACTION_DOWN) {
ViewParent p = getParent();
if (p != null) {
p.requestDisallowInterceptTouchEvent(true);
}
}
return false;
}
}
我浏览了互联网,发现这些帖子没有帮助我:
我的时间选择器没有标题。
已经实现了
尝试了清单中的代码,但仍然无法正常工作。
更新
正如 siddesh 所建议的,将TimePicker 的layout_height 设置为200dp 有效,但它会切断肖像。现在,肖像是200dp 高,但被截断,风景完全显示:
【问题讨论】:
-
最好在方向更改时关闭 datepickerdialog 默认日历做同样的事情检查你的日历应用程序以设置闹钟
-
@siddhesh 这不是 DatePickerDialog,它是 TimePicker(也不是 TimePickerDialog)
-
同样的事情,请检查您何时在您的手机点击时间选择器上设置闹钟并旋转您的手机计时器被关闭
-
@siddhesh 所以当我旋转手机时 TimePicker 会消失?但是为什么当我旋转回来时仍然有效?
-
我不明白你想说什么最好在 timepicker 上使用dismiss来解雇
标签: android android-timepicker