Adattare app ad ogni schermo

kalimett

Utente Attivo
29 Apr 2011
39
0
0
Ciao a tutti,
sono un giovane sviluppatore che si sta dedicando ad una calcolatrice in material design. Purtroppo c'è un problema: non riesco ad adattare i tasti ad ogni schermo, infatti sul mio Xperia s (4.3 pollici) i tasti risultano troppo piccoli mentre con un nexus 5 i tasti sono della dimensione perfetta. Come faccio a fare in modo che si adattino ad ogni schermo? Posto qui sotto il codice xml
Codice:
<RelativeLayout    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background = "#ffffff"
    android:textSize="35dp">


<TextView
    android:id="@+id/twone"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="0dp"
    android:layout_marginTop="0dp"
    android:background="#5677fc"
    android:text="0"
    android:textSize="35dp" />


    <Button
        android:id="@+id/buttonsplit"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_alignParentRight="true"
        android:onClick="sendMessageSplit"
        android:text="@string/button_split"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonnine"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_toRightOf="@+id/buttoneight"
        android:onClick="sendMessageNine"
        android:text="@string/button_nine"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttoneight"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_toRightOf="@+id/buttonsseven"
        android:onClick="sendMessageEight"
        android:text="@string/button_eight"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonzero"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonnine"
        android:onClick="sendMessageZero"
        android:text="@string/button_zero" 
        android:background="#ffffff"/>


    <Button
        android:id="@+id/buttonfour"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonone"
        android:background="#ffffff"
        android:onClick="sendMessageFour"
        android:text="@string/button_four" />


    <Button
        android:id="@+id/buttonless"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/buttonone"
        android:onClick="sendMessageLess"
        android:text="@string/button_less"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonone"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/twone"
        android:layout_alignParentRight="false"
        android:onClick="sendMessageOne"
        android:text="@string/button_one"
        android:background="#ffffff" />
    
      
      <Button
          android:id="@+id/buttonsix"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttonone"
          android:layout_toRightOf="@+id/buttonfive"
          android:onClick="sendMessageSix"
          android:text="@string/button_six"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonsseven"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttonfive"
          android:layout_alignParentRight="false"
          android:onClick="sendMessageSeven"
          android:text="@string/button_seven"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonthree"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_toRightOf="@+id/buttontwo"
          android:layout_below="@+id/twone"
          android:onClick="sendMessageThree"
          android:text="@string/button_three" 
          android:background="#ffffff"/>


      <Button
          android:id="@+id/buttonfive"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttontwo"
          android:layout_toRightOf="@+id/buttonfour"
          android:onClick="sendMessageFive"
          android:text="@string/button_five"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttontwo"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_toRightOf="@+id/buttonone"
          android:layout_below="@+id/twone"
          android:onClick="sendMessageTwo"
          android:text="@string/button_two"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonplus"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/twone"
          android:layout_alignParentRight="true"
          android:onClick="sendMessagePlus"
          android:text="@string/button_plus"
          android:background="#ffffff"
           />
      

      <Button
          android:id="@+id/buttonfor"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_alignBaseline="@+id/buttonzero"
          android:layout_alignBottom="@+id/buttonzero"
          android:layout_toLeftOf="@+id/buttonnine"
          android:onClick="sendMessageFor"
          android:text="@string/button_for"
          android:background="#ffffff"
           />
      
       <com.faizmalkani.floatingactionbutton.FloatingActionButton
        android:id="@+id/fabbutton"
        android:layout_width="72dp"
        android:layout_height="72dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:onClick="fabClicked"
        app:drawable="@drawable/ic_av_equal2"
        app:color="#5677fc" />
 

michelep

Utente Attivo
21 Nov 2013
123
4
0
www.michelepierri.it
Ciao a tutti,
sono un giovane sviluppatore che si sta dedicando ad una calcolatrice in material design. Purtroppo c'è un problema: non riesco ad adattare i tasti ad ogni schermo, infatti sul mio Xperia s (4.3 pollici) i tasti risultano troppo piccoli mentre con un nexus 5 i tasti sono della dimensione perfetta. Come faccio a fare in modo che si adattino ad ogni schermo? Posto qui sotto il codice xml
Codice:
<RelativeLayout    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background = "#ffffff"
    android:textSize="35dp">


<TextView
    android:id="@+id/twone"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="0dp"
    android:layout_marginTop="0dp"
    android:background="#5677fc"
    android:text="0"
    android:textSize="35dp" />


    <Button
        android:id="@+id/buttonsplit"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_alignParentRight="true"
        android:onClick="sendMessageSplit"
        android:text="@string/button_split"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonnine"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_toRightOf="@+id/buttoneight"
        android:onClick="sendMessageNine"
        android:text="@string/button_nine"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttoneight"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonfour"
        android:layout_toRightOf="@+id/buttonsseven"
        android:onClick="sendMessageEight"
        android:text="@string/button_eight"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonzero"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonnine"
        android:onClick="sendMessageZero"
        android:text="@string/button_zero" 
        android:background="#ffffff"/>


    <Button
        android:id="@+id/buttonfour"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/buttonone"
        android:background="#ffffff"
        android:onClick="sendMessageFour"
        android:text="@string/button_four" />


    <Button
        android:id="@+id/buttonless"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/buttonone"
        android:onClick="sendMessageLess"
        android:text="@string/button_less"
        android:background="#ffffff" />


    <Button
        android:id="@+id/buttonone"
        android:layout_width="80dp"
        android:layout_height="100dp"
        android:layout_below="@+id/twone"
        android:layout_alignParentRight="false"
        android:onClick="sendMessageOne"
        android:text="@string/button_one"
        android:background="#ffffff" />
    
      
      <Button
          android:id="@+id/buttonsix"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttonone"
          android:layout_toRightOf="@+id/buttonfive"
          android:onClick="sendMessageSix"
          android:text="@string/button_six"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonsseven"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttonfive"
          android:layout_alignParentRight="false"
          android:onClick="sendMessageSeven"
          android:text="@string/button_seven"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonthree"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_toRightOf="@+id/buttontwo"
          android:layout_below="@+id/twone"
          android:onClick="sendMessageThree"
          android:text="@string/button_three" 
          android:background="#ffffff"/>


      <Button
          android:id="@+id/buttonfive"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/buttontwo"
          android:layout_toRightOf="@+id/buttonfour"
          android:onClick="sendMessageFive"
          android:text="@string/button_five"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttontwo"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_toRightOf="@+id/buttonone"
          android:layout_below="@+id/twone"
          android:onClick="sendMessageTwo"
          android:text="@string/button_two"
          android:background="#ffffff" />


      <Button
          android:id="@+id/buttonplus"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_below="@+id/twone"
          android:layout_alignParentRight="true"
          android:onClick="sendMessagePlus"
          android:text="@string/button_plus"
          android:background="#ffffff"
           />
      

      <Button
          android:id="@+id/buttonfor"
          android:layout_width="80dp"
          android:layout_height="100dp"
          android:layout_alignBaseline="@+id/buttonzero"
          android:layout_alignBottom="@+id/buttonzero"
          android:layout_toLeftOf="@+id/buttonnine"
          android:onClick="sendMessageFor"
          android:text="@string/button_for"
          android:background="#ffffff"
           />
      
       <com.faizmalkani.floatingactionbutton.FloatingActionButton
        android:id="@+id/fabbutton"
        android:layout_width="72dp"
        android:layout_height="72dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:onClick="fabClicked"
        app:drawable="@drawable/ic_av_equal2"
        app:color="#5677fc" />

Ciao,
dovresti creare dei file risorsa per ogni schermo, in modo che l'app vada a caricare i parametri corretti a seconda del dispositivo in uso. In tal modo ogni dispositivo caricherà l'app con le dimensioni corrette.

Ti consiglio di dare una lettura alla guida developer Android: http://developer.android.com/training/multiscreen/index.html

Un saluto.
 
Discussioni simili
Autore Titolo Forum Risposte Data
Juriy APP: Adattare immagini a GIF animata in real time Programmazione 0
M [Javascript] Adattare immagine di background all'altezza dello smartphone Javascript 1
L [HTML] Adattare bordo al contenuto HTML e CSS 4
D [Javascript] Convertire ed adattare una data Javascript 1
B Adattare testo a cornice HTML e CSS 2
felino [CSS][Wordpress] Adattare delle immagini alla dimesione del box contenitore HTML e CSS 2
felino Adattare un layout desktop ad un responsive HTML e CSS 9
L Adattare sfondo in base alla risoluzione WordPress 3
P Adattare sito alle varie risoluzioni... HTML e CSS 2
R Adattare immagini alla dimensione del monitor Javascript 2
P Risoluzione del sito si può adattare? HTML e CSS 0
V Adattare sito web per tutte le risoluzioni ? HTML e CSS 1
P Adattare sito a diverse risoluzioni HTML e CSS 14
M Adattare script di "form mail con upload file" al mio form mail HTML! PHP 7
S Adattare la pagina web creata ad ogni monitor HTML e CSS 11
C Adattare uno script di altro linguaggio a javascript Javascript 11
W Adattare immagini slideshow a riquadro predefinito Webdesign e Grafica 0
matrobriva Adattare classe Odt2Xhtml PHP 2
F [HELP] Adattare al form Visual Basic 0
L Adattare il sito a qualsiasi computer Webdesign e Grafica 4
P Adattare un layer alle varie risoluzioni HTML e CSS 0
D Adattare contenuto a risoluzione utente HTML e CSS 5
G adattare sito con frame a monitor [era:Frame] Webdesign e Grafica 3
M Adattare iFrame HTML e CSS 5
B Adattare tabella a immagine di sfondo con Dreamweaver Cs3 Webdesign e Grafica 3
StefanoITA Adattare il sito alla risoluzione del visitatore HTML e CSS 5
M Adattare sito a risoluzione video [era:help me] HTML e CSS 6
G adattare pagina web a tutte le risoluzioni HTML e CSS 9
C Adattare un filmato a vari monitor Flash 5
C Adattare il sito a vari schrmi HTML e CSS 2
V [Cerco] Socio e Sviluppatore per App PlacesFinder Offerte e Richieste di Lavoro e/o Collaborazione 0
D sviluppo app eventi + libri Sviluppo app per Android 0
L File CSV con app inventor da errore Sviluppo app per Android 1
P App webview Sviluppo app per Android 0
G Avviare un activity quando l'app è chiusa Sviluppo app per Android 0
S WEB APP PER AUTOMATIZZARE TASK INSTAGRAM Annunci servizi di Social Media Marketing 0
Tommy03 App mobile+ sito web con lo stesso database Sviluppo app per Android 4
INTEROPERABILITY Sviluppatrice/formatrice creare APP Offerte e Richieste di Lavoro e/o Collaborazione 0
M Impossibile visionare la immagini dall'App. IP Cam e Videosorveglianza 8
S CERCO CREATORE APP PER E-COM IOS/ANDROID Sviluppo app per Android 1
AC1 Sviluppo App Sviluppo app per Android 2
D Waypoint in Map App Javascript 0
A [Offro][retribuito] Creazione siti web/ web app (Django) Offerte e Richieste di Lavoro e/o Collaborazione 2
Q Leggere NFC da web app - web nfc Javascript 0
D App per Timbrare il cartellino. Offerte e Richieste di Lavoro e/o Collaborazione 2
O MIT App Inventor - caricare un file da app Sviluppo app per Android 1
Tommy03 Due menù nella stessa app Sviluppo app per Android 0
P Pubblicazione app store gioco alcolico Sviluppo app per iOS 1
R Trasferire app su scheda SD Sviluppo app per Android 1
R Accesso a Mit APP Inventor2 Sviluppo app per Android 0

Discussioni simili