中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

橫豎屏切換 顯示不同布局

發布時間:2020-07-10 14:32:45 來源:網絡 閱讀:965 作者:671076656 欄目:移動開發

在項目開發中,

關于android手機橫豎屏切換時顯示不同的界面,在這里我定義了兩個xml布局文件

landscape_screen.xml,portrait_screen.xml

根據屏幕的旋轉切換不同的布局文件

重寫onConfigurationChanged方法,對其進行監聽并判斷當前的屏幕狀態,根據其狀態顯示對應的布局文件

當然在manifest.xml中對應的activity中要加上

android:configChanges="keyboardHidden|orientation|screenSize">

 

貼上代碼說話

 

public classScreenActivity extends Activity implements OnClickListener{

 

private Button btn;

@Override

protected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

 

//默認為豎屏

setupViewInPortraitLayout();

}

 

//豎屏界面

private voidsetupViewInPortraitLayout(){

setContentView(R.layout.portrait_screen);

 

btn = (Button)findViewById(R.id.button1_portrait);

btn.setOnClickListener(this);

}

 

//橫屏界面

private voidsetupViewInLandscapeLayout(){

setContentView(R.layout.landscape_screen);

 

btn = (Button)findViewById(R.id.button1_landscape);

btn.setOnClickListener(this);

}

 

@Override

public voidonConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

 

Toast.makeText(ScreenActivity.this,"onConfigurationChanged", Toast.LENGTH_LONG).show();

Configuration cfg =getResources().getConfiguration();

 

if (cfg.orientation ==Configuration.ORIENTATION_LANDSCAPE) {

 

setupViewInLandscapeLayout();

 

} else if(cfg.orientation == Configuration.ORIENTATION_PORTRAIT) {

 

setupViewInPortraitLayout();

}

}

 

@Override

public void onClick(Viewarg0) {

// TODO Auto-generatedmethod stub

if(arg0.equals(btn)){

Toast.makeText(ScreenActivity.this,"Click", Toast.LENGTH_LONG).show();

}

}

}

 

//landscape_screen.xml

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical">

 

    <Button

        android:id="@+id/button1_landscape"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:text="LandScape"/>

 

    <TextView

        android:id="@+id/textView1"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:gravity="center"

        android:text="橫屏界面"

        android:textAppearance="?android:attr/textAppearanceLarge"/>

 

</LinearLayout>

 

//portrait_screen.xml

<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".ScreenActivity">

 

    <Button

        android:id="@+id/button1_portrait"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentRight="true"

        android:layout_centerVertical="true"

        android:text="Portrait"/>

 

    <TextView

        android:id="@+id/textView1"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_below="@+id/button1_portrait"

        android:gravity="center"

        android:text="豎屏界面"

        android:textAppearance="?android:attr/textAppearanceLarge"/>

 

</RelativeLayout>

 

//manifest.xml

<?xmlversion="1.0"encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

    package="com.example.testscreen"

    android:versionCode="1"

    android:versionName="1.0">

 

    <uses-sdk

        android:minSdkVersion="8"

        android:targetSdkVersion="18"/>

 

    <application

        android:allowBackup="true"

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme"

        >

        <activity

            android:name="com.example.testscreen.ScreenActivity"

            android:label="@string/app_name"

          

            android:configChanges="keyboardHidden|orientation|screenSize"><!-- 這句話不能忘記,起初少了這一個|screenSize參數,一直出現錯誤  -->

            <intent-filter>

                <actionandroid:name="android.intent.action.MAIN"/>

 

                <categoryandroid:name="android.intent.category.LAUNCHER"/>

            </intent-filter>

        </activity>

    </application>

</manifest>

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

香格里拉县| 吴忠市| 永定县| 玉溪市| 金塔县| 新和县| 宜良县| 通许县| 玛沁县| 宜都市| 视频| 万宁市| 稷山县| 德格县| 大田县| 北川| 高邮市| 奉节县| 乐都县| 龙南县| 汨罗市| 从化市| 四川省| 临泉县| 会昌县| 北安市| 葵青区| 渝中区| 阳曲县| 东海县| 潞城市| 射洪县| 洞头县| 改则县| 灵璧县| 南投市| 磐安县| 延安市| 普兰店市| 北碚区| 若羌县|