Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在GridView和BaseAdapter中设置ImageView而不是ImageView_Android_Gridview_Imageview_Baseadapter - Fatal编程技术网

Android 如何在GridView和BaseAdapter中设置ImageView而不是ImageView

Android 如何在GridView和BaseAdapter中设置ImageView而不是ImageView,android,gridview,imageview,baseadapter,Android,Gridview,Imageview,Baseadapter,假设我有多个要设置在另一个上面的图像,如何在GridView中实现这一点 比如: 出身背景 图像视图1 ImageView2右下角的ImageView2 以下是我想要的示例: 这是我的密码 活动: public class ImgAdapter extends BaseAdapter { private Context mContext; private ColorMatrixColorFilter cf; String Questions = Question.Que

假设我有多个要设置在另一个上面的图像,如何在GridView中实现这一点

比如: 出身背景 图像视图1 ImageView2右下角的ImageView2

以下是我想要的示例:

这是我的密码 活动:

public class ImgAdapter extends BaseAdapter {
    private Context mContext;
    private ColorMatrixColorFilter cf;
    String Questions = Question.Questions;
    int level = Levels.level;

    public ImgAdapter(Context c) {
        mContext = c;
        ColorMatrix matrix = new ColorMatrix();
        //matrix.setSaturation(0); //0 means grayscale
        matrix.setSaturation(0);
        cf = new ColorMatrixColorFilter(matrix);
    }

    public int getCount() {

        return ThumbIds.length;

    public Object getItem(int position) {
        return null;
    }

    public long getItemId(int position) {
        return 0;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView imageView;
        SharedPreferences pref = mContext.getSharedPreferences(Questions, Context.MODE_PRIVATE);


        //imageView = (ImageView) convertView;
        imageView = new ImageView(mContext);
        int size = mContext.getResources().getDimensionPixelSize(R.dimen.width);
        imageView.setLayoutParams(new GridView.LayoutParams(size, size));
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setAdjustViewBounds(true);
        imageView.setImageResource(ThumbIds[position]);



        if(pref.getBoolean(level+"answered"+position, false)){

            //Thats the ImageView I want to set over the another ImageView
            /*ImageView answ;
            answ = new ImageView(mContext);
            answ.setScaleType(ImageView.ScaleType.CENTER_CROP);
            answ.setAdjustViewBounds(true);
            answ.setImageResource(R.drawable.answered);*/

            imageView.setImageResource(ThumbIds[position]+1);
        }

        return imageView;

    }


    public static Integer[] ThumbIds =
        {
        R.drawable.1,
        R.drawable.2,
        R.drawable.3,
        R.drawable.4,
        R.drawable.5,
        R.drawable.6,
        R.drawable.7
        };  

}
布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:orientation="vertical"
              android:id="@+id/layout" >

    <TextView
        android:id="@+id/Correct"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text=""
        />

<GridView 
android:id="@+id/Question"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center"
android:horizontalSpacing="20dp"
android:verticalSpacing="20dp"
android:numColumns="3"
android:stretchMode="columnWidth"
tools:context=".Question" />

</LinearLayout>

在提问活动中,我得到了GridView,它创建了一个xml布局,在相对布局中有两个图像。在getView中,放大布局,设置图像。并返回膨胀视图