在我的应用中,用户从联系人或通话记录中选择电话号码。挑选联系人非常简单,在手机和平板电脑上都很好用 - 我。即在手机上弹出新的全屏活动,在桌子上我看到了很好的弹出式对话框,其中包含联系人列表。
似乎无法从通话记录中选择电话号码,因此我必须实施自己的活动(通过ListFragment)。我希望获得与联系人相同的行为 - 在平板电脑上我希望看到带有列表视图的弹出对话框,在手机上我希望看到全屏活动。
可以在不使用以下代码的情况下获得在此图片上绘制的内容:“如果这是表格,则显示弹出窗口,否则启动新活动”,并且仅使用自动拾取的样式/布局取决于设备?
答案 0 :(得分:2)
似乎最简单的解决方案 - 我使用ListFragment并且不想将其牺牲给DialogFragment - 是创建不同的主题取决于分辨率(和平台)。
例如:
<强>的AndroidManifest.xml 强>
<activity
android:name="CallLogActivity"
android:theme="@style/dialog_or_activity">
</activity>
<强> \值-XLARGE-V11 \ styles.xml 强>
<resources>
<style name="dialog_or_activity" parent="android:Theme.Holo.Light.Dialog">
</style>
</resources>
<强> \值\ styles.xml 强>
<style name="dialog_or_activity" parent="android:Theme">
</style>