0

我想让我的应用程序尽可能接近设备的原始主题。因此,我将这种布局用于分隔符:

这是一个单独的布局文件。无论如何都没有以编程方式使用相同的资源吗?

我试过:

TextView tvSeparator = new TextView(context);   
tvSeparator.setBackgroundResource(android.R.drawable.list_selector_background);

但我不知道填充、字体大小、字体样式等:/

4

3 回答 3

0

您必须使用


context.getResources().getDrawable(R.id.xxx);


(可能会有所不同,只是从我的脑海中记住..)

于 2011-10-22T11:28:38.957 回答
0

由于您使用的资源是 android.R 资源,您可以这样做:

list_selector_background.xml 文件将在您的 android SDK 中(您下载过的地方)。查找它,将此文件的内容复制到资源文件夹中名为 my_list_selector_background.xml 的新文件中(所有其他布局文件都在其中)

更改您想要更改的任何内容 - 填充,字体大小,任何东西。

现在从你的 R 而不是 Android.R 访问这个资源 ..

所以代码现在看起来像:

TextView tvSeparator = new TextView(context);   
tvSeparator.setBackgroundResource(R.drawable.my_list_selector_background);

但是请注意,您不能更改原始 list_selector_background.xml

于 2011-10-22T11:41:35.400 回答
0

我只是通过膨胀 android.R.layout.preference_category 来解决它,因为那是一个文本字段

于 2011-10-25T13:43:00.103 回答