亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更改可見性導致我的應用程序崩潰,為什么?

更改可見性導致我的應用程序崩潰,為什么?

慕桂英4014372 2023-03-17 14:15:15
我有2節課。一個類在我的擴展視圖的 GameView 類中創建了我的迷宮游戲。GameView 類:將我的視圖的可見性設置為 VISIBLE,直到玩家 == 退出,然后它不可見(如預期的那樣)但是我的 LinearLayout 視圖(在 OnCreate、MainActivity.java 中是不可見的)當布爾值(播放器)設置為 VISIBLE == exit) 為真,導致應用程序崩潰。我知道更改 LinearLayout 的可見性會導致崩潰,就好像我將其注釋掉一樣,它會使應用程序崩潰。我試圖更改我的 MainActivity 類中的可見性,但這似乎也不起作用。我目前正在嘗試使用 Intent 將此信息推送到 MainActivity,以使用我的 playAgain() 但我不確定該怎么做。@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        LinearLayout layout = findViewById(R.id.playAgainLayout);        layout.setVisibility(View.INVISIBLE);}public void createMaze(){...... do {            next = getNeighbour(current);            if (next != null) {                removeWall(current, next);                stack.push(current);                current = next;                current.visited = true;            } else                current = stack.pop(); //gives us the top element of the stack and removes it from the        }while(!stack.empty());        Animation slideUp = AnimationUtils.loadAnimation(getContext(), R.anim.slide_up);        gameView.startAnimation(slideUp);}public void checkExit() {        if (player == exit && counter < 3) {            counter++;            Animation slideDown = AnimationUtils.loadAnimation(getContext(), R.anim.mazeslidedown);            gameView.startAnimation(slideDown);            gameView.setVisibility(INVISIBLE);//            layout.setVisibility(VISIBLE);        }    }我想要的是讓迷宮變得不可見,LinearLayout 變得可見,并允許用戶點擊我的按鈕(暫時重新啟動迷宮)。
查看完整描述

3 回答

?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

我看過你關于那個的另一篇文章,并認為問題是因為你試圖訪問一個與該類不相關的布局對象,你可以在 onCreate() 的主類中使用 setContentView(R. layout.activity_main); 關聯它并通過對你的其他類的引用發送它,但我不確定通過它是否會起作用。



查看完整回答
反對 回復 2023-03-17
?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

您沒有定義 gameView 變量。你應該把 gameView = findeVideById(R.id.game_view) 你的 onCreate 方法



查看完整回答
反對 回復 2023-03-17
?
慕無忌1623718

TA貢獻1744條經驗 獲得超4個贊

我想你忘了gameView = findViewByID(R.id.your_gameview_id)



查看完整回答
反對 回復 2023-03-17
  • 3 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號