Android 将图像添加到gridlayout会更改整个布局
我是Android开发新手,所以我可能错过了一个简单的问题,但我正在尝试创建一个顶部带有图像的登录屏幕。我的布局完全按照我想要的方式,除了当我添加图像时,整个布局都会改变。我添加了一个与imageview(LoginPageCharity)具有相同网格设置的文本框进行测试,它与文本框完美配合,但随后我将imageview更改为visible,将文本框(textView1)更改为gone,我的整个设置都会更改。你能给我解释一下为什么会这样,如果可能的话,如何补救?提前谢谢你!下面是两个布局和我的代码Android 将图像添加到gridlayout会更改整个布局,android,xamarin,android-imageview,android-gridlayout,Android,Xamarin,Android Imageview,Android Gridlayout,我是Android开发新手,所以我可能错过了一个简单的问题,但我正在尝试创建一个顶部带有图像的登录屏幕。我的布局完全按照我想要的方式,除了当我添加图像时,整个布局都会改变。我添加了一个与imageview(LoginPageCharity)具有相同网格设置的文本框进行测试,它与文本框完美配合,但随后我将imageview更改为visible,将文本框(textView1)更改为gone,我的整个设置都会更改。你能给我解释一下为什么会这样,如果可能的话,如何补救?提前谢谢你!下面是两个布局和我的代
我所做的是:
textView1
,因为它只是“用于错误测试”ImageView
的visibility
属性,就像您一直想显示的那样ImageView
的weight
属性这就是你想要的吗?我想我解释得不够清楚。我希望我的照片是可见的,我希望它被放置在同一个区域采取作为(textView1)。但当我向imageView框(与textView1框具有相同的网格尺寸)添加图像时,网格会发生变化。textView1仅用于错误测试。我希望此图片可以在我的登录上方查看,而无需更改格式。我使用的图片可以在这里找到:把图片放在
网格布局上方如何?我真的不知道你把它放在我的网格布局上方是什么意思。GridLayout是一个根级别的元素。是的,但是人们总是可以将它降级为根的子元素(并在GridLayout
和ImageView
周围放置一个布局,但是请稍候,我认为它有一个解决方案(至少是我目前理解的问题).就这样!谢谢你的帮助。看来我太想约束我的目标了,我应该相信它知道它在做什么。现在我知道父母让孩子离开这个世界时的感受了。
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:p1="http://schemas.android.com/apk/res/android"
p1:layout_width="match_parent"
p1:layout_height="match_parent"
p1:id="@+id/gridLayout1"
p1:columnCount="6"
p1:rowCount="10"
p1:alignmentMode="alignBounds"
p1:orientation="horizontal"
p1:columnOrderPreserved="true"
p1:rowOrderPreserved="true"
p1:useDefaultMargins="false">
<TextView
p1:id="@+id/textView1"
p1:enabled="true"
p1:visibility="visible"
p1:layout_column="0"
p1:layout_columnSpan="6"
p1:layout_columnWeight="6"
p1:layout_row="0"
p1:layout_rowSpan="3"
p1:layout_rowWeight="3" />
<TextView
p1:id="@+id/textView2"
p1:layout_column="0"
p1:layout_columnSpan="1"
p1:layout_columnWeight="1"
p1:layout_row="5"
p1:layout_rowSpan="1"
p1:layout_rowWeight="0.3"
p1:visibility="visible" />
<Button
p1:text="Log In"
p1:id="@+id/button1"
p1:layout_column="1"
p1:layout_columnSpan="1"
p1:layout_columnWeight="1"
p1:layout_row="5"
p1:layout_rowSpan="1"
p1:layout_rowWeight="0.3" />
<TextView
p1:id="@+id/textView3"
p1:layout_column="2"
p1:layout_columnSpan="1"
p1:layout_columnWeight="1"
p1:layout_row="5"
p1:layout_rowSpan="1"
p1:layout_rowWeight="0.3" />
<Button
p1:text="Create Account"
p1:id="@+id/button2"
p1:layout_column="4"
p1:layout_columnSpan="1"
p1:layout_columnWeight="1"
p1:layout_row="5"
p1:layout_rowSpan="1"
p1:layout_rowWeight="0.3" />
<TextView
p1:id="@+id/textView4"
p1:layout_column="5"
p1:layout_columnSpan="1"
p1:layout_columnWeight="1"
p1:layout_row="5"
p1:layout_rowSpan="1"
p1:layout_rowWeight="0.3" />
<TextView
p1:id="@+id/textView5"
p1:layout_column="0"
p1:layout_columnSpan="6"
p1:layout_columnWeight="6"
p1:layout_row="6"
p1:layout_rowSpan="4"
p1:layout_rowWeight="4" />
<EditText
p1:inputType="textPassword"
p1:id="@+id/editText1"
p1:layout_column="1"
p1:layout_columnSpan="4"
p1:layout_columnWeight="4"
p1:layout_row="4"
p1:layout_rowSpan="1"
p1:text="Password" />
<EditText
p1:inputType="textEmailAddress"
p1:id="@+id/editText2"
p1:layout_column="1"
p1:layout_columnSpan="4"
p1:layout_columnWeight="4"
p1:layout_row="3"
p1:layout_rowSpan="1"
p1:text="Username" />
<ImageView
p1:src="@drawable/redcross2"
p1:id="@+id/LoginPageCharity"
p1:layout_column="0"
p1:layout_columnSpan="6"
p1:layout_columnWeight="6"
p1:layout_row="0"
p1:layout_rowSpan="3"
p1:layout_rowWeight="3"
p1:scaleType="centerInside"
p1:adjustViewBounds="true"
p1:visibility="gone"
p1:cropToPadding="true" />
</GridLayout>