我的应用程序中有一个SlidingPaneLayout,我希望它看起来或多或少像Hangouts一样。我在左侧显示元素列表,在右侧窗格中显示详细信息,在选择元素时重叠。
这就是我在Galaxy Nexus上看到的内容,这非常符合我的意思:
现在,这就是我对旧Galaxy S的看法:
代码非常简单:
<android.support.v4.widget.SlidingPaneLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/sliding_pane_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment
android:id="@+id/list_pane"
android:name="com.towers.hotelsclickpoc.ResultsCardsFragment"
android:layout_width="400dp"
android:layout_height="match_parent"
android:layout_weight="40"
android:layout_gravity="left"></fragment>
<fragment
android:id="@+id/content_pane"
android:name="com.towers.hotelsclickpoc.DetailsFragment"
android:layout_width="450dp"
android:layout_height="match_parent"
android:layout_weight="45"
android:paddingLeft="16dp"
android:paddingRight="16dp"></fragment>
</android.support.v4.widget.SlidingPaneLayout>
如何在两台设备上使布局看起来非常相似?正如你所看到的,我尝试添加一些权重但是没有用。
答案 0 :(得分:0)
好吧,好像我设法解决了这个问题。
SlidingPaneLayout的内部现在看起来像这样:
<fragment
android:id="@+id/list_pane"
android:name="com.towers.hotelsclickpoc.ResultsCardsFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left"></fragment>
<fragment
android:id="@+id/content_pane"
android:name="com.towers.hotelsclickpoc.DetailsFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp"></fragment>
看起来BOTH片段上的layout_width =“match_parent”就可以了。
我希望这会对其他人有所帮助。