2015-02-13 3 views
0

Я разрабатываю Android-игру и, как ни странно, в главном меню моей игры кнопки работают только во второй раз, когда их нажимают. Я уже пробовал помещать onClick в файл кнопки кнопки (и общедоступный метод с атрибутом вида в Activity), но я получил тот же результат. Может кто-нибудь мне помочь?кнопка андроида работает только во второй раз

это XML:

<Button 
     android:id="@+id/botaoTeppo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/versaoDoJogo" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:layout_marginTop="40dp" 
     android:background="@drawable/botao_menu_principal" 
     android:paddingLeft="10dp" 
     android:paddingRight="10dp" 
     android:text="@string/botaoTreino" 
     android:textSize="40sp" 
     android:textColor="#FFFFFF" /> 

и вот в OnCreate() для добавления buttonListener:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.getGameHelper().setMaxAutoSignInAttempts(0); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    switchToScreen(R.id.tela_inicial_sumo_sensei); 

    String fontpathChines = "fonts/Wonton.ttf"; 
    Typeface tfChines = Typeface.createFromAsset(getAssets(), fontpathChines); 
    Button botaoTeppo = (Button)findViewById(R.id.botaoTeppo); 
    Button botaoJogarOnline = (Button) findViewById(R.id.botaoJogarOnline); 
    Button botaoModoCompeticao = (Button) findViewById(R.id.botaoModoCompeticao); 
    botaoTeppo.setTypeface(tfChines); 
    botaoJogarOnline.setTypeface(tfChines); 
    botaoModoCompeticao.setTypeface(tfChines); 

    botaoTeppo.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      Toast.makeText(getApplicationContext(), "botão ir pra teppo acionado", Toast.LENGTH_SHORT).show(); 
      ArmazenaMostrarRegrasTreinamento mostrarExplicacaoDoTeppoAntes = ArmazenaMostrarRegrasTreinamento.getInstance(); 
      boolean mostrarExplicacaoDoTeppo = mostrarExplicacaoDoTeppoAntes.getMostrarRegrasDoTreinamento(getApplicationContext()); 
      Intent iniciaTelaTreinoIndividual; 
      if(mostrarExplicacaoDoTeppo == true) 
      { 
       iniciaTelaTreinoIndividual = new Intent(MainActivity.this, ExplicacaoTeppo.class); 
      } 
      else 
      { 
       iniciaTelaTreinoIndividual = new Intent(MainActivity.this, EscolhaNivelActivity.class); 
      } 

      startActivity(iniciaTelaTreinoIndividual); 


     } 
    }); 


    this.popupCarregandoSeUsuarioEstahNaVersaoAtual = 
      ProgressDialog.show(MainActivity.this, getResources().getString(R.string.checando_versao_atual), 
           getResources().getString(R.string.por_favor_aguarde)); 
    ChecaVersaoAtualDoSistemaTask taskChecaVersaoAtualDoSistema = new ChecaVersaoAtualDoSistemaTask(this, this.popupCarregandoSeUsuarioEstahNaVersaoAtual); 
    taskChecaVersaoAtualDoSistema.execute(""); 
} 

ответ

0

Я была такая же проблема с приложением, которое я разработал собственный фотоаппарат.

Если вы используете полноэкранный макет в этой деятельности, попытайтесь поместить этот код в файле AndroidManifest.xml под активностью вам нужно:

<activity 
      android:name=".YOUR_ACTIVITY" 
      android:configChanges="orientation" 
      android:label="@string/title_activity_YOUR_ACTIVITY" 
      android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > 

Линия, которая делает волшебство: андроид: тема = "@ android: style/Theme.NoTitleBar.Fullscreen"

+0

попытался использовать это, но это не сработало. Я думаю, что попробую не использовать его на весь экран ... –

+0

Не могли бы вы вставить весь файл макета XML? –

Смежные вопросы