Autore Topic: Collegamento mediante ImageButton  (Letto 496 volte)

Offline jp86

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    galaxy s plus
  • Sistema operativo:
    windows 8
Collegamento mediante ImageButton
« il: 15 Marzo 2013, 19:56:16 CET »
0
Ciao ragazzi,
vorrei sapere come collegare tramite imageButton più pagine. Ho un menu iniziale con 6 bottoni che mi collegano a 6 sezioni differenti. Posto lo screenshot del menù iniziale.
Graziee
Mi sono dimenticato di mettere il codice che ho fatto
la classe principale home:
Codice (Java): [Seleziona]
public class Home extends Activity{

        GridView gridView;
         
        static final String[] MENU = new String[] {
                "Bacheca", "Appelli", "Docenti", "Orario Lezioni", "Libretto",
                "Gruppi", "Segreteria", "Segreteria Didattica", "Biblioteca" };
 
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_home);
                gridView = (GridView) findViewById(R.id.menu);
                gridView.setAdapter(new ImageAdapter(this, MENU));
                Button bottone = (Button) findViewById(R.id.grid_item_image);
                bottone.setOnClickListener(new OnClickListener() {
                        @Override              
                                public void onClick(View v) {
                                        clickSuBottone();
                        }
                });  
                setContentView(bottone);
        }
       
        private void clickSuBottone(){
                Intent intent = new Intent(this, Bacheca.class);
                startActivity(intent);
        }

Classe imageAdapter, visualizza le icone:
Codice (Java): [Seleziona]
public class ImageAdapter extends BaseAdapter {
        private Context context;
        private final String[] mobileValues;
 
        public ImageAdapter(Context context, String[] mobileValues) {
                this.context = context;
                this.mobileValues = mobileValues;
        }
 
        public View getView(int position, View convertView, ViewGroup parent) {
 
                LayoutInflater inflater = (LayoutInflater) context
                        .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
 
                View gridView;
 
                if (convertView == null) {
 
                        gridView = new View(context);
                        gridView = inflater.inflate(R.layout.menu, null);
                         ImageView imageView = (ImageView) gridView.findViewById(R.id.grid_item_image);        
                        String mobile = mobileValues[position];
 
                        if (mobile.equals("Appelli")) {
                                imageView.setImageResource(R.drawable.appelli);
                               
                        } else if (mobile.equals("Docenti")) {
                                imageView.setImageResource(R.drawable.docenti);
                        } else if (mobile.equals("Orario Lezioni")) {
                                imageView.setImageResource(R.drawable.lezioni);
                        } else if (mobile.equals("Libretto")) {
                                imageView.setImageResource(R.drawable.libretto);
                        } else if (mobile.equals("Gruppi")) {
                                imageView.setImageResource(R.drawable.gruppo);
                        } else if (mobile.equals("Segreteria")) {
                                imageView.setImageResource(R.drawable.segreteria);
                        } else if (mobile.equals("Segreteria Didattica")) {
                                imageView.setImageResource(R.drawable.didattica);
                        } else if (mobile.equals("Biblioteca")) {
                                imageView.setImageResource(R.drawable.biblioteca);
                        }else
                        {
                                imageView.setImageResource(R.drawable.notizie);
                        }
 
                } else {
                        gridView = (View) convertView;
                }
 
                return gridView;
        }
       
        @Override
        public int getCount() {
                return mobileValues.length;
        }
 
        @Override
        public Object getItem(int position) {
                return null;
        }
 
        @Override
        public long getItemId(int position) {
                return 0;
        }
}

classe Menu.xml, inserita in res/layout, mi imposta le icone a griglia 3 per riga:
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
   android:id="@+id/menu"
   android:numColumns="3"
   android:gravity="center"
   android:columnWidth="100dp"
   android:stretchMode="columnWidth"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent" >
 </GridView>

classe menu.xml, crea l'imageButton:
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:padding="5dp" >
    <ImageButton
       android:id="@+id/grid_item_image"
       android:layout_width="126px"
       android:layout_height="126px"
       android:layout_margin="30px"
       android:background="#FF000000"
       android:src="@drawable/notizie" >
    </ImageButton>
</LinearLayout>
« Ultima modifica: 15 Marzo 2013, 20:05:58 CET da jp86 »