我的布局中有滚动条的问题。 我的布局包含一个包含两个布局的滚动条。第一个布局具有静态高度。第二个结帐包含tabgroup的 tabHost 。第二个布局还包含Expandable Gridview。
问题是,当我加载布局时,它会直接显示Tabbar并隐藏第一个布局。我们可以滚动但最初我需要显示顶部布局而不是tabHost 。任何人都可以帮助我解决这个问题吗?
提前致谢...
我已经从xml文件中添加了我的代码段。
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/header"
android:fillViewport="true" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RelativeLayout
android:id="@+id/relay1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true" >
<include
android:id="@+id/cover"
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/coverphoto" />
<ImageView
android:id="@+id/ximg_logo"
android:layout_width="70dip"
android:layout_height="70dip"
android:layout_below="@+id/cover"
android:layout_marginLeft="16dip"
android:layout_marginTop="-42dip" />
<TextView
android:id="@+id/xtxt_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/ximg_logo"
android:layout_marginLeft="5dip"
android:layout_toRightOf="@+id/ximg_logo"
android:ellipsize="end"
android:ems="5"
android:singleLine="true"
android:textColor="@color/sixty_black"
android:textSize="20sp" >
<requestFocus />
</TextView>
<Button
android:id="@+id/xbtn_follow"
style="@style/follow_button_normal"
android:layout_width="95dip"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/cover"
android:layout_marginRight="7dip"
android:background="@drawable/buttons_shape_fill_orange"
android:text="@string/str_follow" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/cover"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:background="@color/fifty_black"
android:orientation="vertical"
android:paddingLeft="3dip"
android:paddingRight="3dip"
android:weightSum="3" >
<RelativeLayout
android:id="@+id/xlay_following"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_alignParentTop="true"
android:layout_marginTop="10dip"
android:layout_weight="1"
android:onClick="following" >
<TextView
android:id="@+id/xtxt_imfollowing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textColor="@color/white"
android:textSize="18sp" />
<TextView
android:id="@+id/xtxt_imfollowing_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/xtxt_imfollowing"
android:layout_centerHorizontal="true"
android:padding="5dip"
android:text="@string/str_im_following"
android:textColor="@color/white"
android:textSize="14sp" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/xlay_follower"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:onClick="follower" >
<TextView
android:id="@+id/xtxt_myfollower"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dip"
android:textColor="@color/white"
android:textSize="18sp" />
<TextView
android:id="@+id/xtxt_myfollowers_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/xtxt_myfollower"
android:layout_centerHorizontal="true"
android:padding="5dip"
android:text="@string/str_myfollowers"
android:textColor="@color/white"
android:textSize="14sp" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/xlay_interests"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_alignParentBottom="true"
android:layout_below="@+id/xlay_follower"
android:layout_centerHorizontal="true"
android:layout_weight="1" >
<TextView
android:id="@+id/xtxt_interests"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dip"
android:textColor="@color/white"
android:textSize="18sp" />
<TextView
android:id="@+id/xtxt_interests_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/xtxt_interests"
android:layout_centerHorizontal="true"
android:paddingBottom="5dip"
android:text="@string/str_interest"
android:textColor="@color/white"
android:textSize="14sp" />
</RelativeLayout>
</LinearLayout>
<RelativeLayout
android:id="@+id/xrl_msg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@color/fifty_black"
android:padding="10dip" >
<ImageView
android:id="@+id/ximg_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/ic_msg" />
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:id="@+id/relay2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/relay1"
android:layout_marginTop="10dip" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip" >
</TabWidget>
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:background="@color/orange" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
</RelativeLayout>
</RelativeLayout>
</ScrollView>
答案 0 :(得分:0)
当然,RelativeLayout rl1与rl2重叠。它们在layout_width上都是match_parent。您需要使用android:layout_alignParentTop
或android:layout_alignParentLeft="true"
将两个布局与左/右或上/下对齐。
但是你不能将它用于RelativeLayout。它用于RelativeLayout或LinearLayout中的UI元素。
由于您没有使用标签元素或任何UI发布完整的布局文件,因此我无法为您提供任何xml示例。
答案 1 :(得分:0)
我有一个类似的问题,一种适用于我的布局的方法是更改高度和可见性,如下所示(使用布局架构作为一个很好的例子):
<RelativeLayout
android:id="@+id/relay1"
android:layout_width="match_parent"
android:focusable="true"
android:layout_height="0dp"
android:visibility="gone"
>
请注意 android:layout_height 和可见性。当然,我知道你并不希望你的第一个布局永远隐藏起来。但这是一个想法,你可以用你的第二个布局relay2做同样的事情。
这是一个动态隐藏/显示布局的示例代码。对象relayLayout是你的relay1视图。
if "hide the layout" {
relayLayout.setVisibility(LinearLayout.GONE);
}
else {
relayLayout.setVisibility(LinearLayout.VISIBLE);
}
注意setVisibility
和有效常量。
现在,示例代码设置视图的高度。这可能是您需要的唯一代码,实际上可能更好。
ViewGroup.LayoutParams layoutParams = relayLayout.getLayoutParams();
layoutParams.height = 0;
relayLayout.setLayoutParams(layoutParams);
主要注意ViewGroup.LayoutParams
和height
属性。在此代码中,布局将被隐藏,第二个布局应该升到顶部。
答案 2 :(得分:0)
另一个解决方案,可能是最好的解决方案是谷歌显示/隐藏2种不同布局的答案。在您的布局文件中,我看到了两种截然不同的布局设计,因此这适用于您的情况。 一个说明这一点的网页是Building a Dynamic UI with Fragments。 这是一个很好的阅读。
这是一个示例代码,让这个想法有效:
// Create new fragment and transaction
Fragment newFragment = new ExampleFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
// Replace whatever is in the fragment_container view with this fragment,
// and add the transaction to the back stack
transaction.replace(R.id.fragment_container, newFragment);
transaction.addToBackStack(null);
// Commit the transaction
transaction.commit();
示例代码来自Fragments。
此代码和布局设计的一个优点是,您的2个布局至少分为2个文件,并强制分离以备将来的代码更改。 玩得开心:-) Tommy Kwee。