Android 台灣中文網

標題: colorballs遊戲製作問題 [打印本頁]

作者: ArthasL    時間: 2013-9-5 20:11
標題: colorballs遊戲製作問題
本帖最後由 ArthasL 於 2013-9-11 13:08 編輯

我在.java內加了 setImageResource 運行後可看到圖片A
但我再加了個onclick button 原意是按了後會出現另一張圖B
但實際運行後 一按了按鈕 圖片B 是出來了 但圖片A 消失了...
請問原因是? 如何解決? 謝謝各位大大!!

作者: whl    時間: 2013-9-5 23:42
有圖有 Code 都不一定可以回答了,而沒圖?沒 code?沒人會理你啦。
作者: ArthasL    時間: 2013-9-6 01:37
抱歉  現在附上code

protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_main);
                int dx=drawx.length;
                int dy=drawy.length;
                int i=new Random().nextInt(dx);
                int j=new Random().nextInt(dy);
                String x=drawx[i];
                String y=drawy[j];
                int xx = Integer.parseInt(x);
                int yy = Integer.parseInt(y);
                myImageView = (ImageView)findViewById(R.id.imageView1);  
        myImageView.setImageResource(R.drawable.red);
        myImageView.setX(xx);
        myImageView.setY(yy);
        }

        public boolean onTouchEvent(MotionEvent event) {

                int x=(int) event.getX();
                int y=(int) event.getY();
                if(27<x && x<72 && 245<y && y<290) {
                        myImageView = (ImageView)findViewById(R.id.imageView1);  
                        myImageView.setImageResource(R.drawable.red);
                        myImageView.setX(27);
                        myImageView.setY(135);
        }
               
                return super.onTouchEvent(event);
        }
作者: song6680    時間: 2013-9-6 03:16
setImageResource是替換圖片
一個imageview應該只能顯示一張圖片
所以在加一個imageview,把A或B的圖片SET到第二個imageview就好了

作者: ArthasL    時間: 2013-9-6 09:30
我是嘗試過圖B 不用 myImageView這個名字...結果還是一樣...
作者: whl    時間: 2013-9-6 21:28
本帖最後由 whl 於 2013-9-6 21:30 編輯
ArthasL 發表於 2013-9-6 09:30
我是嘗試過圖B 不用 myImageView這個名字...結果還是一樣...


你會不會是這樣寫的?
myImageView = (ImageView)findViewById(R.id.imageView1);  
myImageView2 = (ImageView)findViewById(R.id.imageView1);
一旦 myImageView2 改變,myImageView 也會跟著改變。

  
作者: ArthasL    時間: 2013-9-6 21:54
本帖最後由 ArthasL 於 2013-9-6 22:38 編輯

我明白你意思了 是因為imageView1 重複了
在layout設置2個ImageView就成功了
但這樣的話
如果我要做每按一下按鈕就畫一個圖 按10下按鈕畫10個圖 那我不就要在layout加10個ImageView了?\
所以說是不是不應該用這方法去做呢?
作者: xjxuvup    時間: 2013-9-7 21:05
如果你的意思是按一次會出現一張圖
且不重複
那你應該就要有10個imageview
因為你每次setImageView();
只是把按鈕重新換上圖片而已
並不會多一個ImageView出來
作者: ArthasL    時間: 2013-9-8 00:28
本帖最後由 ArthasL 於 2013-9-11 13:49 編輯

謝謝解答

其實我是想製作一個COLORBALLS的遊戲
一開啟遊戲就會在9X9格棋盤上隨機出現3個隨機顏色的球
當移動一個球去另一格時 棋盤會再產生隨機出現3個隨機顏色的球.
當5個同顏色的球連成一直線 那5個球就會消失並得分.
那還要設定被移動的球由A點去B點之間不能有球阻礙.

還有就是能給個製作這類遊戲的方向嗎?

感謝各位!!
作者: ArthasL    時間: 2013-9-10 21:07
本帖最後由 ArthasL 於 2013-9-11 13:39 編輯

原本我是SET座標來定每格位置 當點擊某一格就會CHECK其座標
但現在想到了另一個方法就是直接放透明的IMAGEVIEW放在所有格內再SET ONCLICKLISTENER
圖出現就是SETIMAGEVIEW做另一張圖,用這方法會不會較好?

我想問如果我的棋盤像這樣
board_old.png
登錄/註冊後可看大圖