有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在单击时替换图像

我正在Android Studio上创建一个纸牌游戏,我一直在玩纸牌。我生成牌,发牌,但不知道如何玩。我正在考虑使用onclick侦听器。我希望能够点击我想要的卡片,它会移动到屏幕上的另一个位置。我可以将其移动到特定位置或另一个图像的顶部

代码如下:

package com.techietoystore.newsnakes;

import 安卓x.appcompat.app.AppCompatActivity;

import 安卓.content.DialogInterface;
import 安卓.media.Image;
import 安卓.os.Bundle;
import 安卓.view.MotionEvent;
import 安卓.view.View;
import 安卓.widget.Button;
import 安卓.widget.ImageButton;
import 安卓.widget.ImageView;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class MainActivity extends AppCompatActivity {
    ImageView iv_1, iv_2, iv_3, iv_4, iv_5, iv_6, iv_7, iv_8;


    private Button button;
    private iv_1 imageView1;

    ArrayList<Integer> cards;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        iv_1 = (ImageView) findViewById(R.id.imageView1);
        iv_2 = (ImageView) findViewById(R.id.imageView2);
        iv_3 = (ImageView) findViewById(R.id.imageView3);
        iv_4 = (ImageView) findViewById(R.id.imageView4);
        iv_5 = (ImageView) findViewById(R.id.imageView5);
        iv_6 = (ImageView) findViewById(R.id.imageView6);
        iv_7 = (ImageView) findViewById(R.id.imageView7);
        iv_8 = (ImageView) findViewById(R.id.imageView8);


        iv_1.setVisibility(View.INVISIBLE);
        iv_2.setVisibility(View.INVISIBLE);
        iv_3.setVisibility(View.INVISIBLE);
        iv_4.setVisibility(View.INVISIBLE);
        iv_5.setVisibility(View.INVISIBLE);
        iv_6.setVisibility(View.INVISIBLE);
        iv_7.setVisibility(View.INVISIBLE);
        iv_8.setVisibility(View.INVISIBLE);

        cards = new ArrayList<>();

        cards.add(109);
        cards.add(110);
        cards.add(111);
        cards.add(112);
        cards.add(113);
        cards.add(114);
        cards.add(115);
        cards.add(116);

        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Collections.shuffle(cards);

                //sort hands
                List<Integer> player1Cards = new ArrayList<>();
                for (int i = 0; i < 4; i++) {
                    player1Cards.add(cards.get(i));

                    Collections.sort(player1Cards);
                }
                List<Integer> player2Cards = new ArrayList<>();
                for (int i = 4; i < 8; i++) {
                    player2Cards.add(cards.get(i));

                    Collections.sort(player2Cards);
                }



                //deal
                assignImages(player1Cards.get(0), iv_1);
                assignImages(player1Cards.get(1), iv_2);
                assignImages(player1Cards.get(2), iv_3);
                assignImages(player1Cards.get(3), iv_4);
                assignImages(player2Cards.get(0), iv_5);
                assignImages(player2Cards.get(1), iv_6);
                assignImages(player2Cards.get(2), iv_7);
                assignImages(player2Cards.get(3), iv_8);


                iv_1.setVisibility(View.VISIBLE);
                iv_2.setVisibility(View.VISIBLE);
                iv_3.setVisibility(View.VISIBLE);
                iv_4.setVisibility(View.VISIBLE);
                iv_5.setVisibility(View.VISIBLE);
                iv_6.setVisibility(View.VISIBLE);
                iv_7.setVisibility(View.VISIBLE);
                iv_8.setVisibility(View.VISIBLE);
            }

            public void assignImages(int card, ImageView image) {
                switch (card) {
                    case 109:
                        image.setImageResource(R.drawable.r13);
                        break;
                    case 110:
                        image.setImageResource(R.drawable.r14);
                        break;
                    case 111:
                        image.setImageResource(R.drawable.r15);
                        break;
                    case 112:
                        image.setImageResource(R.drawable.y11);
                        break;
                    case 113:
                        image.setImageResource(R.drawable.y12);
                        break;
                    case 114:
                        image.setImageResource(R.drawable.y13);
                        break;
                    case 115:
                        image.setImageResource(R.drawable.y14);
                        break;
                    case 116:
                        image.setImageResource(R.drawable.y15);
                        break;

                }


            }

        });
        //playing card
        iv_1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                final ImageView imageView = (ImageView) findViewById(R.id.imageView1);
                iv_1.setVisibility(View.INVISIBLE);
            }
        });
    }

    private class iv_1 {
    }
}

共 (0) 个答案