允许用户添加/删除按钮和按钮自动切换位置

时间:2013-03-01 18:55:12

标签: android android-layout

我想为Android平台创建一个灵活的用户界面。

基本上我的布局将包含一个开头处带有“加号”的图像按钮。 当用户点击它时。调用另一个布局,其中用户提示命名要创建的图像按钮。当用户单击确认时,他将返回到第一个布局,新添加的图像按钮将替换“加上“符号图像按钮和加号图像按钮将向右移动。

我知道如何最初创建布局,但我不知道如何对其进行编程以按照上述方式运行。

好,所以现在我的主布局文件设置方式如下:

<?xml version="1.0" encoding="utf-8"?>
    <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:fillViewport="true" >

<RelativeLayout 

    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#000000"  >
    <ImageButton
        android:id="@+id/addRoom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="25dp"
        android:layout_marginTop="38dp"
        android:background="#80000000"
        android:src="@drawable/plus" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="@+id/addRoom"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/addRoom"
        android:layout_alignRight="@+id/addRoom"
        android:layout_below="@+id/addRoom"
        android:text="@string/add_room"
        android:gravity="center"
        android:textColor="#FFFFFF" />

    </RelativeLayout>
</ScrollView>

当我包含片段以移动图像按钮和textview时,我会遇到任何问题。当对齐指令同时显示它们时。

1 个答案:

答案 0 :(得分:2)

当您想要由用户实时操纵您的活动的UI时,建议使用片段和片段管理器来更改活动视图的不同部分。

您可以在文档中找到很好的信息:

http://developer.android.com/guide/components/fragments.html

http://marakana.com/s/post/1250/android_fragments_tutorial

在你的情况下,你会做一些这样的事情:

fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.remove(plusButtonFragment)
.add(R.id.containerForFragments,userNewFragment)
.add(R.id.containerForFragments, plusButtonFragment)).commit();

创建 plusButtonFragment userNewFragment

<强>更新

要管理相对布局中的片段位置,请查看下一篇文章:

How to add fragments programmatically in relativelayout