我有一个android:rotation
的布局,我希望在横向和纵向方向上保持相似,例如这个图:
Embedded Compact documentation
我使用两种类似的布局(布局和布局 - 地面)。在第二个布局中,我在下面的代码中添加<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:rotation="90"
android:scaleType="fitXY"
android:src="@drawable/background_agogo" />
参数,但结果如下:
{{1}}
是否可以仅使用xml布局文件旋转图像视图?我怎么能这样做?
答案 0 :(得分:2)
尝试将android:configChanges="orientation|screenSize"
添加到AndroidManifest.xml
然后在你的片段/活动中,无论包含ImageView,覆盖public void onConfigurationChanged(Configuration newConfig)
并在那里你可以检查if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
然后你可以用编程方式旋转你的ImageView image.setRotation(90)
注意setRotation需要API 11或更高。否则,请参阅此答案以了解如何以编程方式旋转:https://stackoverflow.com/a/10104318/4898635
有关处理运行方式更改(例如方向)的更多信息,请查看:http://developer.android.com/guide/topics/resources/runtime-changes.html
答案 1 :(得分:0)
而不是使用
android:src = "@drawable/background_agogo"
使用
android:background="@drawable/background_agogo"
使用背景属性时,图像应拉伸以适合图像视图。