Ich möchte Symbolleiste auf meine Tätigkeit, die FragmentFreigabeAktivität erstreckt. Ich weiß, dass für die Verwendung setSuppoertActionBar(toolbar)
Methode wir erweitert AppCompatActivity
anstelle von FragmentActivity
, aber ich überschreiben die onMenuItemSelected(int featureId, MenuItem item)
Methode, die in AppCompatActivity
final ist und endgültige Methode kann nicht überschreiben. also bin ich beschränkt auf erweitert FragmentActivity
.Wie man die Symbolleiste auf FragmentActivity setzt?
Hier ist mein Code:
public class MainActivity extends FragmentActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
setSupportActionBar(toolbar); -> error is here
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
switch(item.getItemId()){
case R.id.action_search:
onSearchRequested();
break;
}
return super.onMenuItemSelected(featureId, item);
}
ich auf diese Frage im Zusammenhang viele Antworten sah aber jeder sagt, erstreckt AppCompatActivity
statt FragmentActivity
aber ich möchte Symbolleiste als Überschreibung onMenuItemSelected(int featureId, MenuItem item)
Methode als auch einzustellen.
was soll ich tun, bitte helfen.
Haben Sie schon 'onOptionsAtemSelected' probiert? – Shvet
Ja, ich habe es, ich habe meine Lösung durch Ihren Vorschlag gefunden. Ich erweitere AppCompatActivity anstelle von FragmentActivity und ändere die onMenuItemSelected() -Methode mit der onOptionsItemSelected() -Methode. Vielen Dank :) –