我有一个包含两个ImageView的布局。我想让他们中的一个在肖像中可见,而另一个在风景中可见。我如何使用资源实现它? (我知道如何以编程方式设置它,但我需要使用资源来实现它)。从资源控制视图可见性
我想是这样
在res /布局/ may_layout.xml:
...
<!-- NOTE: 0 and 8 are VISIBLE and GONE respectively -->
<integer name="visibile_in_portrait">0</integer>
<integer name="visibile_in_landscape">8</integer>
在res
/价值观土地:
...
<ImageView
android:id="@+id/image1"
android:visibility="@integer/visible_in_portrait" <<-- is this allowed?
...
/>
<ImageView
android:id="@+id/image2"
android:visibility="@integer/visible_in_landscape"
...
/>
在res /价值/ integers.xml
/integers.xml:
...
<integer name="visibile_in_portrait">8</integer>
<integer name="visibile_in_landscape">0</integer>
B ut当我尝试膨胀图像时,出现运行时错误(索引超出限制)。当我删除android:可见性语句时,程序将运行,但我看到两个图像。
问:什么是使用资源作为Android的一个价值的方式:visibility属性?
(如果你想知道为什么它设置编程不会帮我,它有自动解构/与文件URI位图的应用小部件的肖像转行做)。
谢谢凯珊,我会试试看,并在这里报告。这种方法是否也有助于解决这个问题? http://stackoverflow.com/questions/9745227/setting-programmatically-the-pixel-size-of-a-remote-imageview。我有5种不同的尺寸乘以两种模式(纵向和横向)。使用样式也可以控制ImageView的大小?这样,我将有一个布局与两个图像和5对方向/肖像样式。 (围绕RemoteViews的限制工作并不好玩;-))。 – user1139880 2012-03-17 18:08:02
效果很好。这是一个很大的帮助!谢谢凯珊。 – user1139880 2012-03-17 19:08:23
建议的解决方案涉及使用[样式资源](http://developer.android.com/guide/topics/resources/style-resource.html) – denispyr 2013-06-16 21:28:37