我做Android 在布局文件中写了一些按钮,如何实现对这些按钮的随机排列
4个回答
展开全部
使用绝对布局,获得你这些button的坐标x,y值,然后打乱这些<x,y>一对值的位置,再付给button,达到button的位置改变的目的,这个是相对位置改变了,但绝对位置没有改变。如果你想整个绝对位置改变的,就把x,y值随机得到
追问
你跟我的想法一样,可是在布局文件中如何获得随机的x,y
追答
是这个意思,在布局文件中先写好初始的x,y值,在程序里去修改这些值,再付给button。我现在还有一点没明白,你是想让button的相对位置改变呢,还是绝对位置改变呢?我理解,相对位置就比如一行里有3个button,他们之间随机换位置。绝对位置是三个button在整个屏幕上胡乱的出现,就看你想是哪样的随机了
2015-09-22 · 知道合伙人软件行家
关注
展开全部
Android 布局文件View控件的随机排列需要使用ListView控件或者GridView控件来实现,原理是利用Adapter随机数据源来实现的。
使用自定义Adapter绑定数据。
使用集合随机
Collections.shuffle(list); adapter.setData(list);,并设置将数据绑定到适配器中。
重新刷机列表 adapter.notifyDataSetChanged();
刷新控件列表后,即实现了随机的功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
随即排列是什么意思?问题描述的不清楚 !
是不是有些竖向排列,有些横向排列?
你可以多声明几个容器,这些容器有自己的排列风格。把你的按钮根据需要,作为子放在这些容器里。
eg:
<LinearLayout android:id="@+id/tchm_BtnCont"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight ="0">
<Button android:id="@+id/tchm_AddRed"
android:text="@string/touchme_btnaddRed"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight ="1">
</Button>
<Button android:id="@+id/tchm_AddGreen"
android:text="@string/touchme_btnaddGreen"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight ="1">
</Button>
</LinearLayout>
<TableLayout>
.....
// child
</TableLayout>
是不是有些竖向排列,有些横向排列?
你可以多声明几个容器,这些容器有自己的排列风格。把你的按钮根据需要,作为子放在这些容器里。
eg:
<LinearLayout android:id="@+id/tchm_BtnCont"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight ="0">
<Button android:id="@+id/tchm_AddRed"
android:text="@string/touchme_btnaddRed"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight ="1">
</Button>
<Button android:id="@+id/tchm_AddGreen"
android:text="@string/touchme_btnaddGreen"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight ="1">
</Button>
</LinearLayout>
<TableLayout>
.....
// child
</TableLayout>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果要随机出现的话,你先用Random这个函数可以得到随机树吧?然后就可以把随机出来的值赋给X,Y了;当然这其中会用到循环.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询