定制化对话框,外观和默认对话框一样-是否可能?

3

为了澄清:我希望所有自定义对话框的外观都与系统默认对话框相同。例如,当用户使用htc sense时,对话框应该与htc sense对话框样式匹配;当用户使用官方定制版的三星手机时,对话框应该看起来像它。我想尽可能地本地化。我知道有修改对话框的可能性,但我正在寻找一种引用系统使用的样式并创建具有该样式的对话框的方法。

我的现状:

enter image description here

我想要实现的效果:

enter image description here

我的对话框布局代码,我使用dialog.setContentView(...)调用:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@android:style/Theme.Dialog"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<ListView
    android:id="@+id/listView1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dip"
    android:layout_marginRight="10dip" >
</ListView>

</LinearLayout>

可以看到设置style="@android:style/Theme.Dialog并没有帮助。你有什么想法可能会有所帮助吗?

(我知道已经有这样的问题:https://stackoverflow.com/questions/6746535/android-custom-dialog-but-with-look-and-feel-of-default-one 但是还没有被接受的答案)


你有任何明确的答案了吗? - Hunt
不,我没有这样做过,从我看来,也没有办法做到。你可以为一个 UI 构建类似本地外观的对话框,但当另一个用户有其他 ROM/修改后的 UI 时,该对话框对他/她来说并不像本地的。 - Indrek Kõue
2个回答

0

如果您想要出现只为您的应用程序目的而出现的对话框,请按照以下步骤:

看这张图片,我已经创建了它以保存图像或将其发布到不同的方式。

enter image description here

我已根据我的要求创建了XML布局。如果您想像在问题中所解释的那样添加列表视图,则必须手动在对话框内容中实现该行为。这意味着对于这种布局,您必须实现具有单选按钮和文本的自定义ListView,并且还需要一些Java代码来根据选择执行操作。

通过这样做,您可以按照您的要求实现。

享受吧。 :)


我在我的问题中添加了澄清,请看一下。 - Indrek Kõue
1
@SYLARRR:好的。依照我的看法,你必须使用Android原生代码。祝你一切顺利。 - Shreyash Mahajan

0

您可以为一个UI构建类似本地外观的对话框,但是当另一个用户有其他ROM/修改的UI时,对话框看起来对他/她来说并不像本地对话框。没有内置功能,可以访问系统对话框资源并仅从本地布局填充所有对话框。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接