【问题标题】:Droid: How to reorder a linearlayouts contents programmatically?Droid:如何以编程方式重新排序线性布局内容?
【发布时间】:2013-01-02 20:13:34
【问题描述】:

我有一个带有按钮列表的滚动视图。我希望在首次使用应用程序时将说明放在此列表的开头,但在用户使用过一次后将说明移至屏幕末尾,因为不再需要说明,但我仍然想要他们可以访问。我不知道从哪里开始!

编辑:根据要求提供不同的解释。

我的主要布局有一张桌子。最下面一行是一个Horizo​​ntalScrollView,包含一个LinearLayout,包含6个Button。如果我们按照 .xml 布局中的顺序调用这些按钮 1、2、3、4、5、6,我希望在代码中能够将它们重新排序为“6、1、2、3、4、5” .

【问题讨论】:

  • 你能不能说得更具体一些,因为我能理解你想要达到的目标?
  • 您可以使用 ScrollView Listener.. 因为您将拥有用于滚动开始和结束侦听器的覆盖方法。试试看。根据您可以显示的说明。

标签: android button android-linearlayout


【解决方案1】:

只需找到您的视图,然后从线性布局中删除并按新顺序添加。

ln1= (LinearLayout)findViewById(R.id.ln1);

    btn1= (Button)findViewById(R.id.button1);
    btn2= (Button)findViewById(R.id.button2);
    btn3= (Button)findViewById(R.id.button3);
    btn4= (Button)findViewById(R.id.button4);
    btn5= (Button)findViewById(R.id.button5);
    btn6= (Button)findViewById(R.id.button6);

    ln1.removeAllViews();

    ln1.addView(btn6);
    ln1.addView(btn1);
    ln1.addView(btn2);
    ln1.addView(btn3);
    ln1.addView(btn4);
    ln1.addView(btn5);

【讨论】:

  • 天哪,就这么简单! :) 谢谢。
  • 给定的示例,您只重新订购一个项目,可以通过仅删除该项目并将其插入新位置来简化:ln1.removeView(btn6); ln1.addView(bth6,0);
  • 太简单了:)
猜你喜欢
  • 1970-01-01
  • 2019-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多