我想创建图像的简单布局,在其中可以像表一样在列和行中查看它。有谁知道这是否可能

最佳答案

网格查看代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <GridView
        android:id="@+id/gridView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:columnWidth="90dp"
        android:gravity="center"
        android:horizontalSpacing="10dp"
        android:numColumns="auto_fit"
        android:stretchMode="columnWidth"
        android:verticalSpacing="10dp" >
    </GridView>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:text="Button" />

</RelativeLayout>


ImageAdapter:

public class ImageAdapter extends BaseAdapter {
    private Context mContext;


 // Keep all Images in array
    public Integer[] mThumbIds = {

            //R.drawable.1
        R.drawable.a,R.drawable.b,
        R.drawable.c,R.drawable.d,
        R.drawable.g,R.drawable.f,
        R.drawable.h,R.drawable.i,
        R.drawable.j,R.drawable.k,
        R.drawable.l,R.drawable.m

    };

    // Constructor
    public ImageAdapter(Context c){
        mContext = c;
    }


    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return mThumbIds.length;
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return mThumbIds[position];
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int position, View arg1, ViewGroup arg2) {
        // TODO Auto-generated method stub

         ImageView imageView = new ImageView(mContext);
            imageView.setImageResource(mThumbIds[position]);
            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
            imageView.setLayoutParams(new GridView.LayoutParams(70, 70));
            return imageView;


    }


}


主要活动:

 @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
              GridView gridView = (GridView) findViewById(R.id.gridView1);
              Button btnNavigate=(Button)findViewById(R.id.button1);

              btnNavigate.setOnClickListener(new OnClickListener() {

                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    Intent intent = new Intent(getBaseContext(), SpinnerDemo.class);
                    startActivity(intent);
                }
            });
                // Instance of ImageAdapter Class
                gridView.setAdapter(new ImageAdapter(this));
        }


可以在androidhive.info上找到许多演示

10-01 02:12
查看更多