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
Java 如何在益智游戏中从绘图中选择图像?_Java_Android_Puzzle - Fatal编程技术网

Java 如何在益智游戏中从绘图中选择图像?

Java 如何在益智游戏中从绘图中选择图像?,java,android,puzzle,Java,Android,Puzzle,我昨天刚从codecanyon买了一个益智游戏源代码,它不是我所期望的。用户必须从gallery中选择一个图像来开始拼图,但我希望它以这种方式更改>活动“选择拼图”,然后用户必须选择该活动中列出的图像(不是从gallery,而是从drawables) 我90%确定这是“从图库中选择”按钮的功能代码 public void pickImageOnClick(View view){ shouldSwitch = false; //startActivityF

我昨天刚从codecanyon买了一个益智游戏源代码,它不是我所期望的。用户必须从gallery中选择一个图像来开始拼图,但我希望它以这种方式更改>活动“选择拼图”,然后用户必须选择该活动中列出的图像(不是从gallery,而是从drawables)

我90%确定这是“从图库中选择”按钮的功能代码

    public void pickImageOnClick(View view){
        shouldSwitch = false;

        //startActivityForResult(i, PHOTO_FROM_MEMORY_REQUESTED); 
        Intent localIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        localIntent.setType("image/*");
        localIntent.setAction(Intent.ACTION_GET_CONTENT);
        localIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
        startActivityForResult(localIntent, PHOTO_FROM_MEMORY_REQUESTED);
    }

    private File createGameFile(String part, String ext) throws Exception
    {
        //Getting external storage path, and .temp directory in it.
        File mainDir= Environment.getExternalStorageDirectory();
        mainDir=new File(mainDir.getAbsolutePath()+MAIN_FOLDER);

        //If .temp does not exists, it is created.
        if(!mainDir.exists()) mainDir.mkdir();       

        return new File(mainDir.getAbsolutePath().toString(), part+ext);
       // return File.createTempFile(part, ext, mainDir);

    }

    public void playOnClick(View View){
        Intent intent = new Intent(this, PuzzleActivity.class);
        String[] gameSizes = getResources().getStringArray(R.array.gamesizes);
        intent.putExtra(EXTRA_GAMESIZE, gameSizes[gameSizeSpinner.getSelectedItemPosition()]);
        intent.putExtra(EXTRA_IMGURI, imageUri);
        //Toast.makeText(getApplicationContext(), "Hi"+imageUri, 400).show();
        int orientation;    //Determining screen orientation.
        orientation = (selectedImage.getWidth()>selectedImage.getHeight()) ? 
                GameBoard.ORIENTATION_HORIZONTAL : GameBoard.ORIENTATION_PORTRAIT;
        intent.putExtra(EXTRA_BOARD_ORIENTATION, orientation);

//      String str = orientation == 0 ? "PORTRAIT" : "HORIZONTAL";
//      Log.d("KAMIL", "Orientation : " + str);

        shouldSwitch = true;
        startActivity(intent);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        if(requestCode == PHOTO_FROM_MEMORY_REQUESTED && resultCode == RESULT_OK){
            //updateSelectedPicture(data.getData());
            try
            {
            imageUri = data.getData();
            //scaleImage(uri, 2048);

            BitmapFactory.Options options=new BitmapFactory.Options();
            options.inSampleSize = 9;

            //Opening the input stream and receiving Bitmap.
            InputStream imageStream = getContentResolver().openInputStream(imageUri);
            //selectedImage = BitmapFactory.decodeStream(imageStream);
            selectedImage = BitmapFactory.decodeStream(imageStream,null,options);
            //.selectedImage = BitmapFactory.decodeFile(i);
            //Bitmap thumbnail = BitmapFactory.decodeFile(mFileTemp.getPath());
            if (selectedImage.getHeight() > 1200)
                selectedImage = Bitmap.createScaledBitmap(selectedImage, selectedImage.getWidth() * 1200 / selectedImage.getHeight(), 1200, false);
            //Toast.makeText(getApplicationContext(), ""+selectedImage.getHeight(), 400).show();
            System.gc();
            playButton.setEnabled(true);
            }
              catch (FileNotFoundException localFileNotFoundException)
              {
                localFileNotFoundException.printStackTrace();
              }
        }    
“pickImageOnClick”…就是这样

 ImageView imageview = (ImageView)findViewById(R.id.imageView);
 imageview.setImageDrawable(getResources().getDrawable(R.drawable.ic_launcher));

嗯,你需要新的活动来展示你所有的可绘制图像(所以你不需要打开图库),首先尝试学习android和java语言的基础知识!您需要了解此代码的大部分内容,以便进行优化,并感谢您的回复。你能给我举个例子吗?如何将此代码与新活动中显示的可绘制图像相连接?