2017-03-08 4 views
0

主な活動のボタンが開いているダッシュボードscreen..Inに別のボタンを非表示されます一つのボタンが検証からショー(usrerole ==ユーザー)になります。このダッシュボード画面をクリックするとなります.but私が問題に一度、一度バックダッシュボード内の別のボタンをクリックしてしまった場合ダッシュボードの "非表示"ボタンをクリックすると、この問題を解決する方法が表示されます。ボタンの操作アンドロイドでの非表示の検証?

MainActivityクラス:

if(userRole.equals("User")){ 
// String user = "test"; 
    Intent i1 = new Intent(getApplicationContext(),Dashboard.class); 
    i1.putExtra("user",userRole); 
    startActivity(i1); 
} 

ダッシュボードクラス:

 btn5 = (Button) findViewById(R.id.button5); 
     btn5.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       Intent i = new Intent(getApplicationContext(), HrInternalUseOnly.class); 
       startActivity(i); 

      } 
     }); 

     final Bundle exe = getIntent().getExtras(); 
     if (exe != null) { 

      String uservalue = exe.getString("user"); 

      Toast.makeText(Dashboard.this,uservalue, Toast.LENGTH_LONG).show(); 

      if (uservalue.equals("User")) { 

       btn5.setVisibility(View.GONE); 

      }else if (uservalue.equals("Admin")) { 
       btn5.setVisibility(View.VISIBLE); 
      } 

     } 


     btn = (Button) findViewById(R.id.button1); 
     btn.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       // TODO Auto-generated method stub 
       Intent i = new Intent(getApplicationContext(), MyProductivity.class); 
       startActivity(i); 
      } 


     }); 
+0

あなたの文はclear.Please –

+0

を精巧ではありませんあなたが開い次MyProductivity活動別のボタンをクリックすると、あなたのボタンをダッシュ​​ボードに戻ったときになくなった状態である、だから、あなたがしたいとき意味この場合は隠しボタンが表示されますか?私はあなたのボタンをダッシュ​​ボードに戻ったとき、私は開いて次のMyProductivity活動別のボタンをクリックして、正しいチェタン –

+0

yesが別のアクティビティを開く]をクリックして戻りますbtn5は問題を修正する方法を示します –

答えて

0

あなたはすべての状態が失われたように、ビューが再作成されます戻る前のページ(ActivityまたはFragmentのどちらか)に行くたびに、あなたあなたはMainActivityで行ったように、バンドル内Buttonの状態を簡単な保存することができます。このようにボタンの可視性を変更した後、このコードを呼び出す:

getIntent().putExtra("isButtonVisible", false); 

ビューも画面回転の後に同じように表示されますので、これはまた、あなたはオリエンテーションの変化にあなたのビューステートを保持するのに役立ちます。..

+0

がなくなった状態で –

0

あなたの次のコードインテントに余分なものがあるときにのみ機能します。ボタン5はケースに隠されます。以下のように 修正コード:

final Bundle exe = getIntent().getExtras(); 
     if (exe != null) { 

      String uservalue = exe.getString("user"); 

      Toast.makeText(Dashboard.this,uservalue, Toast.LENGTH_LONG).show(); 

      if (uservalue.equals("User")) { 

       btn5.setVisibility(View.GONE); 

      } 

     } 
     else 
     { 
     btn5.setVisibility(View.VISIBLE); 
     } 
+0

YAAあり、btn5 btn4などの残りのボタンを..but表示されなくなります –

+0

Ok。 私に確認させてください。私のボタンがまだ隠されているので、私はプレスをバックアップおよび –

+0

はあなたが戻ってプレスに新しいアクティビティを開いている私に私が –

関連する問題