亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

android自定義窗口標題示例分享

2020-04-11 11:52:44
字體:
來源:轉載
供稿:網友

1、建好項目之后在它的layout文件夾下創建一個title.xml文件,作為自定義窗口標題的文件。

復制代碼 代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:text="@string/hello_world"
        android:textColor="#FF00FF"
         />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="add"
        android:text="添加" />
</LinearLayout>

2、在res/drawable文件下建立rectangle.xml文件,為窗口應用上漸變效果。

復制代碼 代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >
   <!--  填充色為漸變色,不需要中間顏色startColor開始和結束的顏色.-->
    <gradient
        android:angle="270"     
        android:endColor="#1DC9CD"
        android:startColor="#A2E0FB"/>
    <!-- 定義內間距 -->
    <padding
        android:left="2dp"
        android:top="2dp"
        android:right="2dp"
        android:bottom="2dp" />
</shape>

3、布局文件:

復制代碼 代碼如下:

<RelativeLayout xmlns: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=".MainActivity" >
    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="Button" />
</RelativeLayout>

4、通過activity后臺代碼進行自定義窗口設置。

復制代碼 代碼如下:

package com.example.customertitle;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.Toast;

//自定義標題
public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 1.設置使用自定義窗口
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
        setContentView(R.layout.activity_main);
        // 2.給窗口引入自定義標題的xml界面文件
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);
    }

    public void add(View v) {
        Toast.makeText(this, "按鈕被點擊", Toast.LENGTH_LONG).show();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

5、部署項目,可以顯示自定義的窗口標題。可是自定義的窗口標題距離界面左右兩端有一點距離,并沒有完全覆蓋。為了解決這一個問題,需要覆蓋android的窗口標題。下面是android窗口標題的源碼。

復制代碼 代碼如下:

<!--2. 注意: 系統窗口的界面文件在Android系統源代碼android-sdk-windows/platforms/android-8/data/res/layout下的screen_custom_title.xml,內容如下:
           1.一個線性布局-->
 <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:fitsSystemWindows="true">
    <FrameLayout android:id="@android:id/title_container"
        android:layout_width="match_parent"
        android:layout_height="?android:attr/windowTitleSize"
        style="?android:attr/windowTitleBackgroundStyle">
    </FrameLayout>
    <FrameLayout android:id="@android:id/content"
        android:layout_width="match_parent"
        android:layout_height="0dip"
         android:layout_weight="1"
        android:foregroundGravity="fill_horizontal|top"
        android:foreground="?android:attr/windowContentOverlay" />
 </LinearLayout>

android:attr/windowTitleSize
android:attr/windowTitleBackgroundStyle
android:attr/windowContentOverlay

上述屬性的值在android-sdk-windows/platforms/android-8/data/res/values下的themes.xml文件中定義:

復制代碼 代碼如下:

   <style name="Theme">
       <itemname="windowContentOverlay">@android:drawable/title_bar_shadow</item>
        <itemname="windowTitleSize">25dip</item>
       <itemname="windowTitleBackgroundStyle">@android:style/WindowTitleBackground</item>
   </style>
@android:style/WindowTitleBackground樣式在android-sdk-windows/platforms/android-8/data/res/values下的styles.xml文件中定義:
   <style name="WindowTitleBackground">
        <itemname="android:background">@android:drawable/title_bar</item>
   </style>


通過上述可以知道android的主題樣式,現在需要繼承重寫它的樣式,代碼如下

復制代碼 代碼如下:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 定義一個樣式,覆蓋原有主題樣式  -->
    <style name="myTheme" parent="android:Theme">
        <item name="android:windowContentOverlay">@drawable/color</item>
        <item name="android:windowTitleSize">50dp</item>
        <item name="android:windowTitleBackgroundStyle">@style/textViewBg</item>
    </style>

    <style name="textViewBg">
        <item name="android:background">@drawable/rectangle</item>
    </style>
</resources>

顏色值的定義

復制代碼 代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">CustomerTitle</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">自定義標題</string>
    <drawable name="color">#00000000</drawable>
</resources>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美精品久久久久久久| 国产69精品99久久久久久宅男| 久久天天躁夜夜躁狠狠躁2022| 国产精自产拍久久久久久蜜| 日韩福利伦理影院免费| 91香蕉嫩草神马影院在线观看| 91夜夜揉人人捏人人添红杏| 成人国产精品久久久| 亚洲欧美激情视频| 午夜精品在线观看| 久久影视电视剧免费网站清宫辞电视| 高清欧美性猛交| 在线视频一区二区| 欧美区二区三区| 国产中文日韩欧美| 国产日韩欧美中文| 国产视频精品免费播放| 一本色道久久88综合亚洲精品ⅰ| 亚洲视频在线看| 91高清免费在线观看| 中文字幕v亚洲ⅴv天堂| 日韩有码在线观看| 日韩精品高清在线| 日韩在线视频免费观看高清中文| 日韩av快播网址| 欧美激情精品久久久久久蜜臀| 欧美猛交ⅹxxx乱大交视频| 久久久国产精彩视频美女艺术照福利| 久久久久久亚洲精品不卡| 国产视频精品久久久| 国产精品十八以下禁看| 亚洲电影在线看| 精品久久久在线观看| 欧美与欧洲交xxxx免费观看| 国产精品久久久久久久久影视| 日韩免费视频在线观看| 色诱女教师一区二区三区| 欧美激情极品视频| 精品国产鲁一鲁一区二区张丽| 国产精品91久久久久久| 日韩高清中文字幕| 亚洲最大成人在线| 久久99精品久久久久久琪琪| 国产99久久精品一区二区永久免费| xx视频.9999.com| 欧美日韩精品在线观看| 九九热这里只有在线精品视| 69av在线播放| 精品无人区太爽高潮在线播放| 国产99在线|中文| 欧美午夜美女看片| 色噜噜国产精品视频一区二区| 久国内精品在线| 精品中文字幕久久久久久| 伊人久久久久久久久久久久久| 日韩精品在线视频美女| 久久人91精品久久久久久不卡| 亚洲在线第一页| 国内免费久久久久久久久久久| 精品久久久视频| 日韩视频免费中文字幕| 久久久久国色av免费观看性色| 亚洲97在线观看| 欧美激情在线有限公司| 国产日产久久高清欧美一区| 亚洲欧美日本伦理| 日本精品久久久久久久| 92版电视剧仙鹤神针在线观看| 一区二区三区黄色| 欧美成人国产va精品日本一级| 国产亚洲日本欧美韩国| 日韩一区二区在线视频| 亚洲精品www久久久久久广东| 欧美在线日韩在线| 高清一区二区三区四区五区| 亚洲电影免费观看高清完整版| 91精品国产综合久久香蕉最新版| 久久精品亚洲国产| 欧美国产日韩在线| 美女久久久久久久| 国产精品欧美亚洲777777| 亚洲图片欧美午夜| 亚洲黄在线观看| 久久久精品在线| 最新国产精品拍自在线播放| 欧美精品999| 国产成人av网| 亚洲第一免费播放区| 6080yy精品一区二区三区| 欧美极品欧美精品欧美视频| 精品成人乱色一区二区| 中国日韩欧美久久久久久久久| 亚洲人成在线播放| 国产亚洲免费的视频看| 成人激情在线观看| 亚洲国产精品电影| 国产精品99蜜臀久久不卡二区| 国产不卡精品视男人的天堂| 国产精品18久久久久久麻辣| 国产午夜精品全部视频播放| 欧美激情一级欧美精品| 日韩一区av在线| 韩国19禁主播vip福利视频| 国产亚洲精品久久久久久| 亚洲人成电影在线| 91美女福利视频高清| 欧美伊久线香蕉线新在线| 欧美久久精品午夜青青大伊人| 日韩av片电影专区| 一区二区欧美久久| 亚洲欧美视频在线| yw.139尤物在线精品视频| 国产精品久久久久91| 欧美有码在线观看视频| 欧美精品一二区| 日韩精品日韩在线观看| 精品小视频在线| 91精品国产高清久久久久久91| 欧美成人激情图片网| 欧美黄色小视频| 粉嫩老牛aⅴ一区二区三区| 欧美精品videosex极品1| 色午夜这里只有精品| 中文字幕国内精品| 欧洲精品在线视频| 91wwwcom在线观看| 亚洲欧洲美洲在线综合| 欧美激情va永久在线播放| 精品久久久久久中文字幕一区奶水| 成人在线视频网站| 亚洲女人被黑人巨大进入al| 亚洲国产精品福利| 国产亚洲精品一区二区| 欧美交受高潮1| 俺也去精品视频在线观看| 成人免费在线视频网址| 国产xxx69麻豆国语对白| 亚洲精品一区二区在线| 精品精品国产国产自在线| 伦理中文字幕亚洲| 久久成人在线视频| 78m国产成人精品视频| 欧美精品福利在线| 91精品在线看| 国产成人精品午夜| 日本精品久久久久影院| 538国产精品一区二区在线| 日韩中文字幕在线观看| 久久精品国产一区| 亚洲国产日韩一区| 欧美一区二区大胆人体摄影专业网站| 97香蕉久久超级碰碰高清版| 欧美二区乱c黑人| 国产精品九九九| 91精品中文在线| 91国内在线视频| 午夜精品一区二区三区视频免费看| 国内精品中文字幕| 亚洲国产精品yw在线观看| 久久99精品久久久久久琪琪| 久久精品福利视频| 亚洲国产一区二区三区在线观看| 日韩精品在线观看视频| 亚洲桃花岛网站|