Android 无法在线性+;相对布局
下面是我的一个应用程序活动xml。它运行良好,但问题是当它在横向模式下打开时,我只看到最上面的几个UI元素。因此我在其中添加了ScrollView。但之后我的活动没有打开和崩溃。请有人帮我找出添加ScrollView的错误 谢谢Android 无法在线性+;相对布局,android,Android,下面是我的一个应用程序活动xml。它运行良好,但问题是当它在横向模式下打开时,我只看到最上面的几个UI元素。因此我在其中添加了ScrollView。但之后我的活动没有打开和崩溃。请有人帮我找出添加ScrollView的错误 谢谢 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#FFFFFF"
>
<ScrollView android:id="@+id/scroll" android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:src="@drawable/logo"
android:adjustViewBounds="true"
android:scaleType="center"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/rishi_idlabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Email address:"
android:textColor = "#000000"
android:textSize="15sp"
android:paddingLeft="10px"
android:paddingRight="5px"
/>
<EditText android:id ="@+id/custid"
android:hint = "ID"
android:layout_gravity="center_vertical|center_horizontal"
android:scaleType="center"
android:inputType = "phone"
android:singleLine = "true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginRight = "10px"
/>
<TextView
android:id="@+id/pass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Password:"
android:textColor = "#000000"
android:textSize="15sp"
android:paddingLeft="10px"
android:paddingRight="5px"
/>
<EditText android:id ="@+id/password"
android:hint="Password"
android:layout_gravity="center_vertical|center_horizontal"
android:password = "true"
android:singleLine = "true"
android:scaleType="center"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginRight = "10px"
/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop = "10px"
android:background="#FFFFFF"
android:orientation="horizontal">
<Button android:id="@+id/loginButton"
android:layout_gravity="left"
android:layout_width="180sp"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:text="Login"/>
<TextView
android:id="@+id/passforgot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "forgot password"
android:clickable = "true"
android:focusable = "true"
android:textColor = "#0000FF"
android:layout_marginTop = "10px"
android:textSize="15sp"
android:paddingLeft="3px"
android:paddingRight="3px"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop = "10px"
android:background="#FFFFFF"
android:orientation="horizontal">
<TextView
android:id="@+id/newaccount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Dont have an account yet?"
android:textColor = "#000000"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:textSize="15sp"
android:paddingLeft="3px"
android:paddingRight="3px"
/>
<Button android:id="@+id/signup"
android:layout_gravity="right"
android:layout_width="100sp"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:text="Sign-Up"/>
</LinearLayout>
</ScrollView>
</LinearLayout>
在滚动视图中只能添加一个视图。因此,您只需将当前在ScrollView中的所有内容包装到LinerLayout中即可。您需要在ScrollView中增加一个线性或相对布局,因为我已经在您的代码中实现了它
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scroll" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" >
<!-- You can write your further code as written in your xml code here or you can do whatever you want to do inside the scrollview here-->
</LinearLayout>
</ScrollView>
感谢各位的快速回复,最终解决了我的问题。 事实上,我在这个博客中给出的一个答案中使用了ScrollView的代码
<ScrollView android:id="@+id/scroll" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ScrollView>
这段代码崩溃了。所以我检查了文档,发现两个文档之间存在差异,我的代码没有运行
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
“xmlns:android=”http://schemas.android.com/apk/res/android“”丢失。**这是您的答案:这是您的可编辑代码:**
**Here It is Your Answer : This is your editable code : **
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroll" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="#FFFFFF">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ImageView android:src="@drawable/logo"
android:adjustViewBounds="true"
android:scaleType="center"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/rishi_idlabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Email address:"
android:textColor = "#000000"
android:textSize="15sp"
android:paddingLeft="10px"
android:paddingRight="5px"/>
<EditText android:id ="@+id/custid"
android:hint = "ID"
android:layout_gravity="center_vertical|center_horizontal"
android:scaleType="center"
android:inputType = "phone"
android:singleLine = "true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginRight = "10px"/>
<TextView
android:id="@+id/pass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Password:"
android:textColor = "#000000"
android:textSize="15sp"
android:paddingLeft="10px"
android:paddingRight="5px"/>
<EditText android:id ="@+id/password"
android:hint="Password"
android:layout_gravity="center_vertical|center_horizontal"
android:password = "true"
android:singleLine = "true"
android:scaleType="center"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginRight = "10px"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop = "10px"
android:orientation="horizontal">
<Button android:id="@+id/loginButton"
android:layout_gravity="left"
android:layout_width="180sp"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:text="Login"/>
<TextView
android:id="@+id/passforgot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "forgot password"
android:clickable = "true"
android:focusable = "true"
android:textColor = "#0000FF"
android:layout_marginTop = "10px"
android:textSize="15sp"
android:paddingLeft="3px"
android:paddingRight="3px"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop = "10px"
android:orientation="horizontal">
<TextView
android:id="@+id/newaccount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Dont have an account yet?"
android:textColor = "#000000"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:textSize="15sp"
android:paddingLeft="3px"
android:paddingRight="3px"/>
<Button android:id="@+id/signup"
android:layout_gravity="right"
android:layout_width="100sp"
android:layout_height="wrap_content"
android:layout_marginLeft = "10px"
android:layout_marginTop = "10px"
android:text="Sign-Up"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
但是您没有使用好的编程技巧,您的代码格式不正确,请记住提供正确的格式修复您的代码。它的顶部看起来不对。另外,最上面的布局应该有
xmlns:android=”http://schemas.android.com/apk/res/android“
在它里面。它在原始代码里,不知怎么的,它没有显示在这里。添加您的滚动视图作为顶层视图,然后添加一个线性布局以容纳其他所有内容,然后添加您想要的内容。这将很好。感谢Nikki的回复,但如果出现“未绑定前缀”错误,则无法正常工作。找到了正确的方法。。。“@Rishi:yes当然,如果这个scorlview是您的第一个布局,您必须使用xmlns:android=“schemas.android.com/apk/res/android”。我没有使用它,因为您在提供代码时使用了线性布局作为起始布局…感谢您对我的代码进行了正确的格式化。下次我会记得提供正确的格式。实际上,您在scrollview中缺少线性布局,而不是xmlns:android。您可以将linearlayout放入scrollview中,并使用上面提供的相同代码进行检查