动态文字排版(GridView与ArrayAdapter)

动态文字排版(GridView与ArrayAdapter)

新建一个继承Activity类的GridViewAndArrayAdapterActivity,并设置布局文件为:gridviewandarrayadapter.xml。

首先在布局文件中添加3个组件:2个Button、GridView.

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

 

    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:orientation="horizontal" >

 

        <Button

            android:id="@+id/gridviewandarrayadapter_btn01"

            style="@android:style/Widget.Button.Inset"

            android:layout_width="0dp"

            android:layout_height="wrap_content"

            android:layout_weight="1"

            android:text="@string/showtwolines" />

 

        <Button

            android:id="@+id/gridviewandarrayadapter_btn02"

            style="@android:style/Widget.Button.Inset"

            android:layout_width="0dp"

            android:layout_height="wrap_content"

            android:layout_weight="1"

            android:text="@string/showfourlines" />

    </LinearLayout>

 

    <GridView

        android:id="@+id/gridviewandarrayadapter_gridview"

        android:layout_width="fill_parent"

        android:layout_height="fill_parent"

        android:numColumns="3" >

    </GridView>

 

</LinearLayout>

接着在Activity代码中修改。

package lyx.feng.second;

......

public class GridViewAndArrayAdapterActivity extends Activity implements

       OnClickListener {

    private Button btn01 = null;

    private Button btn02 = null;

    private GridView gv = null;

    private String item[] = new String[20];

    private ArrayAdapter<String> adapter = null;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

       // TODO Auto-generated method stub

       super.onCreate(savedInstanceState);

       initViews();

    }

 

    private void initViews() {

       super.setContentView(R.layout.gridviewandarrayadapter);

       this.btn01 = (Button) super

              .findViewById(R.id.gridviewandarrayadapter_btn01);

       this.btn02 = (Button) super

              .findViewById(R.id.gridviewandarrayadapter_btn02);

       this.gv = (GridView) super

              .findViewById(R.id.gridviewandarrayadapter_gridview);

       this.btn01.setOnClickListener(this);

       this.btn02.setOnClickListener(this);

       // 默认btn02不可点击

       this.btn02.setEnabled(false);

       // 初始化数组内容

       for (int i = 0; i < this.item.length; i++) {

           item[i] = "Item" + String.valueOf(i);

       }

       // 初始化Adapter

       this.adapter = new ArrayAdapter<String>(this,

              android.R.layout.simple_list_item_1, this.item);

       // 绑定适配器Adapter

       this.gv.setAdapter(adapter);

    }

 

    @Override

    public void onClick(View v) {

       switch (v.getId()) {

       case R.id.gridviewandarrayadapter_btn01:

           this.gv.setNumColumns(2);

           // 更改按钮状态

           this.btn01.setEnabled(false);

           this.btn02.setEnabled(true);

           break;

       case R.id.gridviewandarrayadapter_btn02:

           this.gv.setNumColumns(4);

           // 更改按钮状态

           this.btn01.setEnabled(true);

           this.btn02.setEnabled(false);

           break;

       }

    }

}

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值