android开发中的grid控制

 android的grid: 很多ui界面都需要使用grid来显示二维数据,grid就像是html中的table用来显示一个表的行列值,grid也可以被用来显示图标,android系统启动后的菜单列出了所有应用就是用grid控制。  用grid显示数据: 
这种用grid显示数据在b/s和c/s中比较常见,在手机由于受到屏幕大小限制用这种方式显示数据很不方便,所有一般grid用来 显示一些图标

具体代码如下:

package com.android777.demo.uicontroller;
 
import java.util.List;
 
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.view.View;货运专家
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.GridView;
import android.widget.ImageView;
 
public class GridActivity extends Activity {
 
    private List<ResolveInfo> apps ;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        setContentView(R.layout.gridview);
 
        GridView gridView = (GridView) findViewById(R.id.dataGrid);
 
        //使用Intent查询出所有的app启动Activity信息
        Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
        mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
        apps = getPackageManager().queryIntentActivities(mainIntent, 0);
 
        gridView.setAdapter(new AppAdapter(this, apps));
 
    }软件开发
 
    class AppAdapter extends ArrayAdapter<ResolveInfo>{
 
        Context mContext;
 
        public AppAdapter(Context context,List<ResolveInfo> apps){
            super(context,0,apps);
            mContext = context;
        }
 
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
 
            ImageView  view ;
 
            if(convertView == null){
                view = new ImageView(mContext);
                view.setLayoutParams(new GridView.LayoutParams(50, 50));
            }else{
                view = (ImageView) convertView;
            }
 
            ResolveInfo mResolveInfo = getItem(position);
            view.setImageDrawable(mResolveInfo.activityInfo.loadIcon(getPackageManager()));
 
            return view;
        }
 
    }
 
}

posted @ 2011-08-17 09:45  ctou45  阅读(738)  评论(0编辑  收藏  举报