2014-01-25 66 views
-1

我有一个活动,我从xml文件设置contentView。但我有太多的小部件(按钮,textView等)里面。所以垂直我不能把它们全部放在屏幕内。下面的许多东西在仿真器屏幕中都不可见。我如何为他们添加ScrollView?我使用相对布局&里面的相对布局,我把所有的小部件。如果我必须使用ScrollView比&如何使用它?如果有其他方式存在,比它是什么?我如何为整个活动添加滚动视图

下面是代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context=".MainActivity" > 

<ScrollView 
android:id="@+id/scrollView1" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
> 
<TableLayout 
android:id="@+id/table1" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_alignParentRight="true" 
android:background="#F5F5F7" > 

<TableRow 
    android:id="@+id/tableRow1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Name: " /> 

    <EditText 
     android:id="@+id/nameEditText" 
     android:layout_width="230dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp" 
     android:textSize="15dp" > 

     <requestFocus /> 
    </EditText> 
    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow2" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Phone: " /> 

    <EditText 
     android:id="@+id/phoneEditText" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp" 
     android:textSize="15dp" > 
    </EditText> 
    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow3" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Email: " /> 

    <EditText 
     android:id="@+id/emailEditText" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp" 
     android:textSize="15dp" > 
    </EditText> 
    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow3" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Sex: " /> 

    <RadioGroup 
     android:id="@+id/radioSex" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <RadioButton 
      android:id="@+id/radioMale" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="10dp" 
      android:checked="true" 
      android:text="@string/radio_male" 
      android:textSize="13dp" /> 

     <RadioButton 
      android:id="@+id/radioFemale" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_toLeftOf="@+id/radioMale" 
      android:text="@string/radio_female" 
      android:textSize="13dp" /> 
    </RadioGroup> 
    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow4" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl4" 
     android:layout_width="80dp" 
     android:layout_height="wrap_content" 
     android:text="Home Division: " /> 

    <Spinner 
     android:id="@+id/divSpinner" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/lbl4" 
     android:layout_marginLeft="5dp" 
     android:textSize="15dp" 
     android:entries="@array/DivisionArr" 
     android:prompt="@string/division_prompt" /> 

    <EditText> 
    </EditText> 
    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow5" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl5" 
     android:layout_width="80dp" 
     android:layout_height="wrap_content" 
     android:text="Home District: " 
     /> 

    <Spinner 
     android:id="@+id/distSpinner" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp" 
     android:textSize="15dp" 

     /> 

    </TableRow> 

    <RelativeLayout 
    android:id="@+id/linear1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl6" 
     android:layout_width="80dp" 
     android:layout_height="wrap_content" 
     android:text="Subjects: " /> 

    <CheckBox 
     android:id="@+id/subChkEng" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/subChkBang" 
     android:layout_alignBottom="@+id/subChkBang" 
     android:layout_alignRight="@+id/subChkFr" 
     android:text="English" 
     android:textSize="13dp" /> 

    <CheckBox 
     android:id="@+id/subChkArab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginRight="32dp" 
     android:text="Arabic" 
     android:textSize="13dp" /> 

    <CheckBox 
     android:id="@+id/subChkBang" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignRight="@+id/subChkArab" 
     android:layout_below="@+id/subChkArab" 
     android:text="Bangla" 
     android:textSize="13dp" /> 

    <CheckBox 
     android:id="@+id/subChkFr" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_toRightOf="@+id/lbl6" 
     android:text="French" 
     android:textSize="13dp" /> 

    </RelativeLayout> 


    <TableRow 
    android:id="@+id/tableRow6" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="SMS: " /> 

    <ToggleButton 
     android:id="@+id/smsToggleButton" 
     android:layout_width="wrap_content" 
     android:layout_height="30dp" 
     android:textSize="15dp" 
     android:text="ToggleButton" /> 

    </TableRow> 



    <TableRow 
    android:id="@+id/tableRow7" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Age: " /> 

    <SeekBar 
     android:id="@+id/ageSeekBar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp"/> 

    </TableRow> 

    <TableRow 
    android:id="@+id/tableRow8" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/lbl1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Rating: " /> 
    <RatingBar 
     android:id="@+id/ratingBar1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     style="?android:attr/ratingBarStyleSmall"/> 

    </TableRow> 


    </TableLayout> 

    <Button 
    android:id="@+id/saveButton" 
    android:layout_width="wrap_content" 
    android:layout_height="20dp" 
    android:layout_alignParentBottom="true" 
    android:layout_below="@+id/table1" 
    android:layout_centerHorizontal="true" 
    android:text="Save" 
    android:textSize="13dp" /> 


</ScrollView> 

</RelativeLayout> 

错误:异常渲染期间提出:滚动型只能承载一个直接子 必须提供layout_width属性。 在窗口>显示视图>错误日志中记录异常详细信息

+0

把滚动视图内的所有部件。 –

+0

我可以在scrollview中使用相对布局和tableLayouts吗? – shaon007

+0

是的,你可以使用相对布局。 –

回答

0

scrollview只能有1个孩子。在滚动视图内创建布局(相对或线性)在布局中添加TableLayout和Button。

+0

感谢老板!为什么它没有出现在我的脑海中?多数民众赞成在最后期限几乎完成后会发生什么.. :-(再次感谢:-) – shaon007

+0

很高兴帮助。如果它的工作,请接受回答 –

+0

伍德已经喜欢。但我没有任何接受选项在我的帐户。可能是因为我的评分仍然很低?!! – shaon007

1

ScrolVeiw后,您应该定义一个线性布局,并在线性布局可以使多个布局我的代码是在这里,它的工作

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:background="@drawable/mainbg"> 

    <TextView 
     android:id="@+id/MainMenu" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Main Menu" 
     android:layout_gravity="center" 
     android:textStyle="bold" 
     android:textColor="#663300" 
     android:layout_marginTop="2dp"/> 

    <ImageView 
     android:id="@+id/mainlogo" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@drawable/easybeelogo" 
     android:layout_marginLeft="40dp" 
     android:layout_marginRight="40dp" 
     android:layout_marginTop="10dp" /> 

    <ScrollView 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:layout_marginTop="30dp" 
     android:layout_marginBottom="20dp" 
     > 
     <LinearLayout 
      android:layout_height="match_parent" 
      android:layout_width="match_parent" 
      android:orientation="vertical"> 
     <LinearLayout 
      android:id="@+id/playerlayout" 
      android:layout_height="wrap_content" 
      android:layout_width="match_parent" 
      android:background="@drawable/cellonetop" 
      android:layout_marginLeft="40dp" 
      android:layout_marginRight="40dp" 
      android:orientation="horizontal" 
      android:weightSum="100" 
      android:layout_marginTop="20dp" 
      > 
      <TextView 
       android:id="@+id/tvsetpalyername" 
       android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       android:textColor="#ffffff" 
       android:text="Choose Player " 
       android:padding="5dp" 
       android:layout_weight="96" 
       android:textSize="12sp" 
       android:layout_gravity="center_vertical" 

       /> 

      <ImageView 
       android:id="@+id/ivchooseplayer" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:background="@drawable/nextclasslogo" 
       /> 

     </LinearLayout> 
     <LinearLayout 
      android:id="@+id/gamecatagorylayout" 
      android:layout_height="wrap_content" 
      android:layout_width="match_parent" 
      android:background="@drawable/cellonetop" 
      android:layout_marginLeft="40dp" 
      android:layout_marginRight="40dp" 
      android:orientation="horizontal" 
      android:weightSum="100" 
      android:layout_marginTop="20dp" 
      > 
      <TextView 
       android:id="@+id/gamecatagory" 
       android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       android:textColor="#ffffff" 
       android:text="Game Catagory " 
       android:padding="5dp" 
       android:layout_weight="40" 
       android:textSize="12sp" 
       android:layout_gravity="center_vertical" 
       /> 


      <TextView 
       android:id="@+id/tvsetgamename" 
       android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       android:textColor="#ffffff" 
       android:text="Grade of Game " 
       android:padding="5dp" 
       android:layout_weight="56" 
       android:textSize="12sp" 
       android:layout_gravity="center_vertical" 

       /> 

      <ImageView 
       android:id="@+id/ivchoosegame" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:background="@drawable/nextclasslogo" 
       /> 

     </LinearLayout> 





     </LinearLayout> </ScrollView> 

</LinearLayout> 
0

添加滚动查看滚动你的活动中一个子布局。

例如:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@android:color/white" > 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_gravity="center" 
     android:padding="20dp" > 

     <LinearLayout 
      android:id="@+id/splashLayout" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" > 

      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:padding="20.0dip" > 

       <LinearLayout 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:gravity="center_horizontal" 
        android:orientation="horizontal" > 

        <ImageView 
         android:id="@+id/imageView1" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_gravity="center" 
         android:src="@drawable/logo" /> 

        <LinearLayout 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_gravity="center" 
         android:orientation="vertical" > 

         <ImageView 
          android:layout_width="fill_parent" 
          android:layout_height="wrap_content" 
          android:layout_gravity="center" 
          android:layout_marginLeft="10dp" 
          android:layout_marginRight="5dp" 
          android:src="@drawable/prachi" /> 

         <TextView 
          android:layout_width="fill_parent" 
          android:layout_height="wrap_content" 
          android:layout_gravity="center" 
          android:layout_marginLeft="10dp" 
          android:layout_marginTop="10dp" 
          android:text="e-Reader" 
          android:textColor="#002255" 
          android:textSize="25dp" > 
         </TextView> 
        </LinearLayout> 
       </LinearLayout> 
      </RelativeLayout> 

      <TextView 
       android:id="@+id/textView_error" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentTop="true" 
       android:layout_gravity="center" 
       android:layout_marginTop="15.0dip" 
       android:textAppearance="?android:attr/textAppearanceMedium" 
       android:textColor="#FE2E2E" 
       android:visibility="invisible" /> 

      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:padding="20.0dip" > 

       <EditText 
        android:id="@+id/log_id" 
        android:layout_width="wrap_content" 
        android:layout_height="50.0dip" 
        android:layout_centerHorizontal="true" 
        android:layout_marginTop="5dp" 
        android:background="@drawable/rounded_edittext_top" 
        android:drawableLeft="@drawable/cred_email" 
        android:drawablePadding="8.0dip" 
        android:hint="@string/text_email" 
        android:inputType="textEmailAddress" 
        android:maxWidth="400.0dip" 
        android:minWidth="400.0dip" 
        android:padding="5.0dip" 
        android:textColor="@color/umano_edit_text" 
        android:textColorHint="@color/umano_edit_hint" 
        android:textSize="16.0sp" /> 

       <EditText 
        android:id="@+id/log_password" 
        android:layout_width="wrap_content" 
        android:layout_height="50.0dip" 
        android:layout_below="@id/log_id" 
        android:layout_centerHorizontal="true" 
        android:layout_marginTop="0.0dip" 
        android:background="@drawable/rounded_edittext_bottom" 
        android:drawableLeft="@drawable/cred_password" 
        android:drawablePadding="8.0dip" 
        android:hint="@string/text_password" 
        android:inputType="textPassword" 
        android:maxWidth="400.0dip" 
        android:minWidth="400.0dip" 
        android:padding="5.0dip" 
        android:textColor="@color/umano_edit_text" 
        android:textColorHint="@color/umano_edit_hint" 
        android:textSize="16.0sp" /> 

       <Button 
        android:id="@+id/btn_login" 
        style="@style/LargeButtonOrange" 
        android:layout_below="@id/log_password" 
        android:layout_centerHorizontal="true" 
        android:layout_marginTop="18.0dip" 
        android:maxWidth="400.0dip" 
        android:minWidth="400.0dip" 
        android:text="@string/btn_login_only" /> 

       <TextView 
        android:id="@+id/link_to_login" 
        android:layout_width="300.0dip" 
        android:layout_height="30.0dip" 
        android:layout_below="@id/btn_login" 
        android:layout_centerHorizontal="true" 
        android:layout_marginTop="22.0dip" 
        android:gravity="center_horizontal" 
        android:text="@string/new_member" 
        android:textColor="@color/umano_edit_text" /> 
      </RelativeLayout> 
     </LinearLayout> 

     <Button 
      android:id="@+id/button_delete" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_alignParentLeft="true" 
      android:layout_marginBottom="26dp" 
      android:layout_marginLeft="15dp" 
      android:text="Button" 
      android:visibility="gone" /> 
    </RelativeLayout> 

</ScrollView>