-2

我想在 android 应用程序中设置布局,以便编辑文本占据大部分屏幕,并且按钮位于底部。我如何动态地做到这一点?

截屏

虽然我希望文本字段与所有剩余空间保持平衡。

提前致谢。

这个问题已经回答了,我得到了解决方案。那么为什么在世界上它被标记为“不具有建设性”?

这设置了一个示例,如何在 android xml 定义中赋予权重。没有冒犯,但我觉得那些投票反对这篇文章的人是吸血鬼,他们四处游荡,通过找任何借口从人们身上吸血,即使它是微不足道的。

如果社区中有人支持开放式交流,请来这里看看如何良好的知识收集被巨魔破坏。

最后,我希望我在最后三段中已经清楚了。

4

3 回答 3

0

好简单

<?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" >

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:ems="10"
        android:gravity="top|left" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button" />

</LinearLayout>
于 2012-10-05T15:49:06.983 回答
0

编辑:

RelativeLayout layout = new RelativeLayout(this);

layout.setScrollContainer(true);    // Remove this if you would not like the soft keyboard to resize the view
LayoutParams layoutParams = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);

EditText text = new EditText(this);
text.setGravity(Gravity.TOP | Gravity.LEFT);

Button button = new Button(this);
button.setId(1000);     // The ID can be anything really

LayoutParams textParams = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
textParams.addRule(RelativeLayout.ALIGN_PARENT_TOP);
textParams.addRule(RelativeLayout.ABOVE, button.getId());

LayoutParams buttonParams = new LayoutParams(LayoutParams.FILL_PARENT, 100);    // I used a basic height of 100px here
buttonParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);

text.setLayoutParams(textParams);
button.setLayoutParams(buttonParams);

layout.setLayoutParams(layoutParams);

layout.addView(text);
layout.addView(button);

setContentView(layout);
于 2012-10-05T15:52:27.573 回答
0

尝试这样的事情:

<?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" >

    <EditText 
        android:id="@+id/edittext"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:hint="Enter note here"
        android:layout_weight="10"
        android:gravity="center"
        />

    <Button 
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Done"
        android:layout_weight="1"
        />

</LinearLayout>
于 2012-10-05T15:53:27.340 回答