2016-04-30 3 views
1

Я просмотрел много переполнений стека q/a, но я не могу дать моей функции навигации назад функциональность. что может быть ошибкаОбратная навигационная кнопка не имеет функции

если кто-то может помочь мне, Потому что я должен представить мой проект Завтра

мой код Java:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_crime); 
    TextView disp1 =(TextView) findViewById(R.id.textView2); 
    disp1.setText("Displaying 1 of 24"); 
    TextView displa = (TextView) findViewById(R.id.textView); 
    displa.setText(" China is the source of 70% of the worlds pirated goods.,"); 
    getActionBar().setDisplayHomeAsUpEnabled(true); 


} 
@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.menu_crime, menu); 


    return true; 
} 
@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 

     case R.id.what: 
      Intent sendIntent = new Intent(); 
      sendIntent.setAction(Intent.ACTION_SEND); 
      sendIntent.putExtra(Intent.EXTRA_TEXT,"Hey,I saw an amazing fact from Fact-O-Mania" +"\n"+"\n"+fact[i]); 
      sendIntent.setType("text/plain"); 
      sendIntent.setPackage("com.whatsapp"); 
      startActivity(sendIntent); 
      int id = item.getItemId(); 
      break; 

     case R.id.home : 

      finish(); 
    } 
    return true; 
} 
+0

http://stackoverflow.com/questions/36884194/adding-back-button-and-override-onbackpressed/ 36884707 # 36884707 проверьте здесь или здесь http://stackoverflow.com/questions/36664266/problems-with-fragment-onbackpress/36665100#36665100 –

ответ

0

После установки действияBar.setHomeButtonEnabled (true);

Добавьте следующий код:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case android.R.id.home: 
      // app icon in action bar clicked; goto parent activity. 
      this.finish(); 
      return true; 
     default: 
      return super.onOptionsItemSelected(item); 
    } 
} 
1

Вы должны определить свою родительскую активность в проявленном XML сказать где перемещаться при нажатии кнопки панели инструментов.

<activity 
    android:name="com.example.myfirstapp.DisplayMessageActivity" 
    android:label="@string/title_activity_display_message" 
    android:parentActivityName="com.example.myfirstapp.MainActivity" > 
    <!-- The meta-data element is needed for versions lower than 4.1 --> 
    <meta-data 
     android:name="android.support.PARENT_ACTIVITY" 
     android:value="com.example.myfirstapp.MainActivity" /> 
</activity> 
+0

все еще не работает больше предложений. – Anirudh

+0

Это правильный ответ, убедитесь, что вы внесли правильный путь. –

+0

Если вы не используете настраиваемую панель действий, измените свой идентификатор элемента на android.R.id.home, как в ответе @ Arpit. – uguboz

0

Попробуйте следующий код

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
switch (item.getItemId()) { 
    case android.R.id.home: 
     onBackPressed(); 
     return true; 
    default: 
     return super.onOptionsItemSelected(item); 
    } 
} 
Смежные вопросы