Академический Документы
Профессиональный Документы
Культура Документы
ANDROID
Menu deslizante
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="135"
android:centerColor="#4CAF50"
android:endColor="#2E7D32"
android:startColor="#81C784"
android:type="linear" />
</shape>
Content_main
Este o arquivo onde sero adicionados os elementos
visuais da activity
Ela ser incorporada em app_bar_main
App_bar_main
Activity_main
Finalmente temos a activity_main que incorpora todos os
elementos
Arquivos de menus
Alm dos layouts, temos dois outros arquivos para os
menus
O primeiro deles j falamos anteriormente, que o
ActionBar, contido no arquivo menu.xml
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12,12m-3.2,0a3.2,3.2 0,1 1,6.4 0a3.2,3.2 0,1 1,-6.4 0" />
<path
android:fillColor="#FF000000"
android:pathData="M9,2L7.17,4H4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2
2,2h16c1.1,0 2,-0.9 2,-2V6c0,-1.1 -0.9,-2 -2,-2h-3.17L15,2H9zm3,15c-2.76,0 -5,-2.24
-5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5z" />
</vector>
cones
V na opo New, clicando com o
boto direito sobre o projeto, e
escolha Vector Asset
Depois clique na opo Choose e
escolha o cone desejado
Por fim, d um nome seguindo a
padronizao
Classe Java
A classe Java gerada tem elementos que no esto
diretamente relacionados com o menu, como os que
esto mostrados abaixo
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
}
Classe Java
Vejamos o mtodo que permite escolher as aes
atreladas a cada um dos elementos
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.nav_camera) {
// Cdigo disparado pelo click no elemento
} else if (id == R.id.nav_gallery) {
...
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.nav_camera) {
Intent intent = new Intent(MainActivity.this, NovaActivity.class);
startActivity(intent);
} else if (id == R.id.nav_gallery) {
...
Ainda sobre Menu
Sumiu....
Ainda sobre Menu
Qual seria uma soluo?