/ / ImageButton si ridimensiona automaticamente in gridlayout - android, xml, layout

ImageButton si ridimensiona automaticamente in griglialay - android, xml, layout

Sto facendo questa domanda (probabilmente) abbastanza faciledal momento che non riesco a capirlo da solo e cercare su Google per più di un'ora non mi dà risultati corretti. Quindi la domanda è: come posso creare i miei oggetti (in genere quelli sono solo 16 pulsanti immagine) in modo che possano rimanere in scala (rispetto al gridlayout) quando la mia immagine è davvero grande (quindi in breve: carico 16xImages come src on buttonImages , ogni immagine è 640x640 e desidero ridimensionare quei 16 pulsanti nel layout della griglia rispetto alla larghezza / altezza del layout della griglia e al conteggio colonna / riga). Spero che sia possibile scrivere in XML poiché non voglio refactificare il mio codice java: /

Ps. Sono un principiante nella programmazione Android

Ps2.Here is my GridLayout with example button, ma è completamente sbagliato: /

<GridLayout
android:id="@+id/GridLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="4"
android:rowCount="4"
tools:context=".GridXMLActivity"
android:layout_below="@+id/Tx1"
android:layout_above="@+id/restart"
android:layout_marginBottom="50sp"
android:layout_marginTop="50sp"
>


<ImageButton
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:src="@drawable/clear"
android:id="@+id/But1"
android:scaleType="fitXY"
android:onClick="but1"

/>

[MODIFICARE] Ho anche creato un tale layout, ma ci sonoalcuni problemi. Il primo è che il mio layout della griglia non si ridimensiona affatto! (Quindi quando prendo lo schermo con una risoluzione più bassa o più alta non si adatta). Ecco perché volevo rendere questo pulsante un po 'ridimensionabile (in questa schermata ogni pulsante ha larghezza e altezza a 60sp che so che non dovrebbe essere "t) Un altro problema è che sto lavorando su sfondi di pulsanti e volevo farlo src. In generale, voglio ottenere la stessa cosa come sullo schermo, ma rendendolo un modo diverso / più flessibile (quindi la risoluzione e l'orientamento non influenzeranno la mia interfaccia grafica e le dimensioni dell'elemento). Se hai bisogno di un intero file XML, lo pubblicherò qui ma è un po 'un casino poiché ho copiato e incollato 16 volte il pulsante immagine inserisci la descrizione dell'immagine qui

risposte:

2 per risposta № 1

Se vuoi ridimensionare qualcosa, mantenendo le proporzioni e hai una dimensione impostata su match_parent, l'altro deve essere wrap_content.

Quindi, supponendo che si desideri che il pulsante si adatti sempre alla larghezza ma rimanga nell'aspetto corretto:

<ImageButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
... />

Per far sì che tutti gli articoli si adattino alla griglia piuttosto che tutti gli elementi si adattino alle loro immagini, è necessario utilizzare il peso. Il peso con il layout della griglia richiede la libreria di supporto prima dell'API21

<GridLayout ...
android:columnCount="2">

<ImageButton
app:layout_gravity="fill"
app:layout_columnWeight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
... />

...