我想将滚动条添加到我的线性布局表单中,因为它太长了。
它有19个文本视图和编辑视图。
请任何人都可以将滚动视图代码添加到xml文件中。
这是我的xml代码:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/Name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Name"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editName"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/FirstName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="FirstName"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editFirstName"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/DateOfBirth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Date Of Birth"
android:textAppearance="?android:attr/textAppearanceLarge" />
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</LinearLayout>
</ScrollView>
<EditText
android:id="@+id/editDateOfBirth"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="date" />
<TextView
android:id="@+id/PlaceOfbirth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Place Of birth"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editPlaceOfbirth"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Address"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editAddress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPostalAddress" />
<TextView
android:id="@+id/PhoneNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="PhoneNumber"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editPhoneNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="phone" />
<TextView
android:id="@+id/e_mail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="e-mail"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edite_mail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/SocialInsurance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Social Insurance"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editSocialInsurance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/GeneralPractioner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="General Practioner"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editGeneralPractioner"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Size"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editSize"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Weight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Weight"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editWeight"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/BMI"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="BMI"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editBMI"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/BloodGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Blood Group"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editBloodGroup"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/DoctorNote"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Doctor Note"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editDoctorNote"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/NurseNote"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nurse Note"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editNurseNote"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Results"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Results"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editResults"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/DrugPrescription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="DrugPrescription"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editDrugPrescription"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Pathology"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pathology"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editPathology"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/Recommendation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Recommendation"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editRecommendation"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:inputType="textMultiLine" >
<requestFocus />
</EditText>
<Button
android:id="@+id/ButtonAddDatabase"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Register" />
</LinearLayout>
</ScrollView>
这很好用。但是当我添加滚动时,它会给我一个错误(致命错误)
03-16 00:06:18.140: E/AndroidRuntime(1215): FATAL EXCEPTION: main
03-16 00:06:18.140: E/AndroidRuntime(1215): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.sqlite/android.sqlite.CreatePatientActivity}: java.lang.RuntimeException: Binary XML file line #3: You must supply a layout_width attribute.
答案 0 :(得分:3)
您需要做的就是将LinearLayout放在ScrollView容器中:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
...
</LinearLayout>
</ScrollView>
请注意,此处使用wrap_content,因为LinearLayout的内容定义了高度。