la frammentazione Android singolo fotogramma
cornice detriti singola: frammenti di un singolo fotogramma è stato progettato per i dispositivi di piccole dimensioni dello schermo, come ad esempio i dispositivi palmari (telefoni cellulari), il sostegno Android 3.0 o versioni successive.
Esempi
Questo esempio spiega come creare i propri pezzi. Qui creiamo due frammenti, uno dei quali è utilizzato nel dispositivo è un cross-schermo quando il dispositivo viene utilizzato in un altro tempo schermo verticale. Seguiamo i passi cominciano.
passo | descrizione |
---|---|
1 | Utilizzando Android Studio IDE per creare un'applicazione Android, denominata singoli frammenti, nome pacchetto cn.uprogrammer.singlefragments. |
2 | Modificare il file attivo principale, come mostrato di seguito MainActivity.java. Qui stiamo andando a controllare l'orientamento del dispositivo, e sulla base di questo per passare da pezzi diversi. |
3 | Creare PortraitFragment.java e LandscapeFragment.java due file nel pacchetto cn.uprogrammer.singlefragments e il metodo associato. |
4 | Creare un file di layout res / layout / landscape_fragment.xml e res / layout / portrait_fragment.xml per definire il layout dei due frammenti. |
5 | Modificare res / layout / activity_main.xml per contenere due frammenti. |
6 | Definire un costante bisogno nella res / valori / strings.xml in. |
7 | Avviare emulatore di Android per eseguire l'applicazione e verificare i risultati delle modifiche apportate all'applicazione. |
Di seguito sono riportati i principali contenuti del file src attiva / cn.uprogrammer.singlefragments / MainActivity.java di:
package cn.uprogrammer.singlefragment; import android.os.Bundle; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.content.res.Configuration; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Configuration config = getResources().getConfiguration(); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); /** * 检测设备方向,并做相应地操作。 */ if (config.orientation == Configuration.ORIENTATION_LANDSCAPE) { /** * 设备的横屏模式。 */ LandscapeFragment ls_fragment = new LandscapeFragment(); fragmentTransaction.replace(android.R.id.content, ls_fragment); }else{ /** * 设备的竖屏模式。 */ PortraitFragment pm_fragment = new PortraitFragment(); fragmentTransaction.replace(android.R.id.content, pm_fragment); } fragmentTransaction.commit(); } }
Creare due file frammentati LandscapeFragment.java e PortraitFragment.java in cn.uprogrammer.singlefragments pacchetto.
Quanto segue è il file LandscapeFragment.java contenuti:
package cn.uprogrammer.singlefragment; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class LandscapeFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { /** * Inflate the layout for this fragment */ return inflater.inflate( R.layout.landscape_fragment, container, false); } }
Quanto segue è il file di contenuto PortraitFragment.java:
package cn.uprogrammer.singlefragment; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class PortraitFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { /** * Inflate the layout for this fragment */ return inflater.inflate( R.layout.portrait_fragment, container, false); } }
Creare due file di layout landscape_fragment.xml e portrait_fragment.xml nella directory res directory / layout.
Quanto segue è il file landscape_fragment.xml contenuti:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#7bae16"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/landscape_message" android:textColor="#000000" android:textSize="28sp" /> <!-- More GUI components go here --> </LinearLayout>
Quanto segue è il file portrait_fragment.xml contenuti:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#666666"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/portrait_message" android:textColor="#000000" android:textSize="28sp" /> <!-- More GUI components go here --> </LinearLayout>
Quello che segue è il contenuto della res / file / activity_main.xml di layout, che contiene due pezzi:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal"> <fragment android:id="@+id/landscape_fragment" android:layout_weight="1" android:layout_width="0dp" android:layout_height="match_parent" /> <fragment android:id="@+id/portrait_fragment" android:layout_weight="2" android:layout_width="0dp" android:layout_height="match_parent" /> </LinearLayout>
Garantire res / valori file / strings.xml contiene quanto segue:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">Single Fragment</string> <string name="hello_world">Hello world!</string> <string name="action_settings">Settings</string> <string name="landscape_message">这是横屏模式碎片</string> <string name="portrait_message">这是竖屏模式碎片</string> </resources>
Diciamo solo eseguire un modificati applicazioni singoli frammenti. Presumo che hai creato AVD durante l'ambiente di installazione. Aprire il progetto nel file attivo, fare clic sulla barra degli strumenti Icona per eseguire l'applicazione in Android Studio. Android Studio installare l'applicazione sul AVD e lo avvia. Se tutto va bene, sarà visualizzata la finestra di emulazione come segue:
In conformità con la seguente per cambiare la direzione della modalità schermo emulatore:
- fn + controllo + F11 cambiamento mac nel paesaggio come ritratto e viceversa
- Ctrl + F11 sulle finestre
- Ctrl + F11 su Linux
Quando si cambia la modalità, si vedrà la modalità orizzontale adatto alla realizzazione della pagina:
In questo modo, è possibile allo stesso evento, utilizzando pezzi non utilizzati per ottenere diverse interfacce. È possibile costruire l'interfaccia in base alle proprie esigenze utilizzando un diverso tipo di componenti di interfaccia.