android样式,android样式文件怎么创建

简述Android 中样式文件使用步骤

在Eclipse中android程序项目目录结构下的res文件夹新建drawable文件夹,并在drawable文件夹下新建各类的xml样式文件,供layout文件夹下的xml布局文件引用,以满足对程序界面的需求开发。如图1和图2是drawable下xml样式文件的样式类型。

创新互联从2013年成立,先为容城等服务建站,容城等地企业,进行企业商务咨询服务。为容城企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

图1、drawable下xml样式文件的样式类型(一)

图2、drawable下xml样式文件的样式类型(二)

接下来我们要详细解析以下各类xml样式文件的作用及其使用方法,请点击目录查看相应解析。

2、animation-list

使用animation-list样式可以实现逐帧动画效果,例如WiFi网络信号的强弱表示或者语音聊天声音的强弱表示,分为增强和减弱两种逐帧动画效果。 

首先是放置图片素材,如图3所示。将其根据屏幕分辨率大小分别放一套图片到不同屏幕分辨率的drawable文件夹下,android系统会根据机器的屏幕分辨率到相应屏幕分辨率的drawable文件夹里面去找相应的图片素材,以兼容不同屏幕分辨率的安卓机器屏幕。

图3、iv1到iv4 

其次是信号增强即图片顺序播放的效果,在drawable下新建animation_list_sequence.xml样式文件。

?xml version="1.0" encoding="utf-8"?!--

根标签为animation-list;

其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画;

其中visible规定drawable的初始可见性,默认为flase;

其中variablePadding若为true则允许drawable的距离在当前选择状态下有所改变(If true, allows the drawable’s padding to change based on the current state that is selected.),默认为false;

根标签下,通过item标签对动画中的每一个图片进行声明;

android:duration 表示展示所用的该图片的时间长度,单位为毫秒;

--animation-list  xmlns:android=""

android:oneshot="true"

android:visible="false"

android:variablePadding="false"

item android:drawable="@drawable/iv1" android:duration="200"/item

item android:drawable="@drawable/iv2" android:duration="200"/item

item android:drawable="@drawable/iv3" android:duration="200"/item

item android:drawable="@drawable/iv4" android:duration="200"/item/animation-list1234567891011121314151617181920

再者是信号增强即图片顺序播放的效果,在drawable下新建animation_list_reverse.xml样式文件。

?xml version="1.0" encoding="utf-8"?!--

根标签为animation-list;

其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画;

其中visible规定drawable的初始可见性,默认为flase;

其中variablePadding若为true则允许drawable的距离在当前选择状态下有所改变(If true, allows the drawable’s padding to change based on the current state that is selected.),默认为false;

根标签下,通过item标签对动画中的每一个图片进行声明;

android:duration 表示展示所用的该图片的时间长度,单位为毫秒;

--animation-list  xmlns:android=""

android:oneshot="true"

android:visible="false"

android:variablePadding="false"

item android:drawable="@drawable/iv4" android:duration="200"/item

item android:drawable="@drawable/iv3" android:duration="200"/item

item android:drawable="@drawable/iv2" android:duration="200"/item

item android:drawable="@drawable/iv1" android:duration="200"/item/animation-list1234567891011121314151617181920

然后在layout文件夹下新建xml布局文件activity_animation_list.xml,引用上面写好的drawable文件夹下的xml样式文件。

?xml version="1.0" encoding="utf-8"?LinearLayout xmlns:android=""

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical"

ImageView        android:id="@+id/iv_animation_list"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:src="@drawable/animation_list_sequence" /

Button        android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:onClick="sequence"

android:text="顺序显示" /

Button        android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:onClick="stop"

android:text="停止动画" /

Button        android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:onClick="reverse"

android:text="倒序显示" //LinearLayout12345678910111213141516171819202122232425262728293031

然后在src包下新建Activity的Java文件AnimationListActivity.java,用于演示操作。

package com.zcz.drawablexmltest;import android.app.Activity;import android.graphics.drawable.AnimationDrawable;import android.os.Bundle;import android.view.View;import android.view.Window;import android.widget.ImageView;public class AnimationListActivity extends Activity{

private ImageView mIv;

private AnimationDrawable mAd;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_animation_list);

mIv = (ImageView) findViewById(R.id.iv_animation_list);

}  

public void sequence(View view){

mIv.setImageResource(R.drawable.animation_list_sequence);

mAd = (AnimationDrawable) mIv.getDrawable();

mAd.start();

}    public void stop(View view){

mAd = (AnimationDrawable) mIv.getDrawable();

mAd.stop();

}    public void reverse(View view){

mIv.setImageResource(R.drawable.animation_list_reverse);

mAd = (AnimationDrawable) mIv.getDrawable();

mAd.start();

}

}

如何自定义Android Dialog的样式?

Android 中自定义Dialog的样式,主要是通过自定义的xml,然后加载到dialog的背景中,如下步骤:

1、自定义Dialog

final Dialog dialog = new Dialog(this, R.style.Theme_dialog);

2、窗口布局

View contentView = LayoutInflater.from(this).inflate(R.layout.select_list_dialog,null);

3、把设定好的窗口布局放到dialog中

dialog.setContentView(contentView);

4、设定点击窗口空白处取消会话

dialog.setCanceledOnTouchOutside(true);

5、具体的操作

ListView msgView = (ListView)contentView.findViewById(R.id.listview_flow_list);

6、展示窗口

dialog.show();

例:

final Dialog dialog = new Dialog(this,R.style.Theme_dialog);

View contentView =LayoutInflater.from(this).inflate(R.layout.select_list_dialog, null);

dialog.setContentView(contentView);

dialog.setCanceledOnTouchOutside(true);

ListView msgView = (ListView)contentView.findViewById(R.id.listview_flow_list);

TextView titleText = (TextView)contentView.findViewById(R.id.title);

titleText.setText("请选择银行卡");

SelectBankCardDialogAdapter adapter =new SelectBankCardDialogAdapter(this, mBankcardList);

msgView.setAdapter(adapter);

msgView.setOnItemClickListener(newOnItemClickListener() {

@Override

public void onItemClick(AdapterViewparent, View view, int position, long id) {

//Toast.makeText(RechargeFlowToMobileActivity.this,

// position+"",0).show();

mSelectCard =mBankcardList.get(position);

String area = mSelectCard.getBank_card();

mCardNumberText.setText(area);

dialog.dismiss();

}

});

Button closeBtn = (Button)contentView.findViewById(R.id.close);

closeBtn.setClickable(true);

closeBtn.setOnClickListener(newView.OnClickListener() {

@Override

public void onClick(View v) {

dialog.dismiss();

}

});

dialog.show();

以上就是在Android开发自定义dialog样式的方法和步骤,android很多的控件都提供了接口或者方法进行样式的定义和修改。

如何修改Android App的样式风格

android中可以自定义主题和风格。风格,也就是style,我们可以将一些统一的属性拿出来,比方说,长,宽,字体大小,字体颜色等等。可以在res/values目录下新建一个styles.xml的文件,在这个文件里面有resource根节点,在根节点里面添加item项,item项的名字就是属性的名字,item项的值就是属性的值,如下所示:

复制代码 代码如下:

?xml version="1.0" encoding="utf-8"?

resources

style name="MyText" parent="@android:style/TextAppearance"

item name="android:textColor"#987456/item

item name="android:textSize"24sp/item

/style

/resources

style中有一个父类属性parent, 这个属性是说明当前的这个style是继承自那个style的,当然这个style的属性值中都包含那个属性中的,你也可以修改继承到的属性的值,好了,style完成了,我们可以测试一下效果了,先写一个布局文件,比如说一个TextView什么的,可以用到这个style的。这里我就写一个EditText吧。下面是布局文件:

复制代码 代码如下:

?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"

EditText

android:id="@+id/myEditText"

android:layout_width="match_parent"

android:layout_height="match_parent"

style="@style/MyText"

android:text="测试一下下"/

/LinearLayout

说完了style,下面就说说Theme,Theme跟style差不多,但是Theme是应用在Application或者Activity里面的,而Style是应用在某一个View里面的,还是有区别的,好了,废话不多说,还是看代码吧。下面的是style文件:

复制代码 代码如下:

?xml version="1.0" encoding="utf-8"?

resources

style name="MyText" parent="@android:style/TextAppearance"

item name="android:textColor"#987456/item

item name="android:textSize"24sp/item

/style

style parent="@android:style/Theme" name="CustomTheme"

item name="android:windowNoTitle"true/item

item name="android:windowFrame"@drawable/icon/item

item name="android:windowBackground"?android:windowFrame/item

/style

/resources

style中有一个父类属性parent, 这个属性是说明当前的这个style是继承自那个style的,当然这个style的属性值中都包含那个属性中的,你也可以修改继承到的属性的值,好了,style完成了,我们可以测试一下效果了,先写一个布局文件,比如说一个TextView什么的,可以用到这个style的。这里我就写一个EditText吧。下面是布局文件:

复制代码 代码如下:

?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"

EditText

android:id="@+id/myEditText"

android:layout_width="match_parent"

android:layout_height="match_parent"

style="@style/MyText"

android:text="测试一下下"/

/LinearLayout

说完了style,下面就说说Theme,Theme跟style差不多,但是Theme是应用在Application或者Activity里面的,而Style是应用在某一个View里面的,还是有区别的,好了,废话不多说,还是看代码吧。下面的是style文件:

复制代码 代码如下:

?xml version="1.0" encoding="utf-8"?

resources

style name="MyText" parent="@android:style/TextAppearance"

item name="android:textColor"#987456/item

item name="android:textSize"24sp/item

/style

style parent="@android:style/Theme" name="CustomTheme"

item name="android:windowNoTitle"true/item

item name="android:windowFrame"@drawable/icon/item

item name="android:windowBackground"?android:windowFrame/item

/style

/resources

可以看到这里写了一个继承自系统默认的Theme的主题,里面有3个属性,这里强调一下第三个属性的值的问题,这里打个问号,然后加前面的一个item的名字表示引用的是那个名字的值,也就是那个名字对应的图片。

然后我们在Manifest.xml里面的Application里面加一个Theme的属性,这个属性对应的就是我们上面写的Theme。

复制代码 代码如下:

application android:icon="@drawable/icon" android:label="@string/app_name"

android:theme="@style/CustomTheme"

activity android:name=".TestStyle"

android:label="@string/app_name"

intent-filter

action android:name="android.intent.action.MAIN" /

category android:name="android.intent.category.LAUNCHER" /

/intent-filter

/activity

上面的代码没有标题栏,背景和fram都是我们设置的图片。当然也可以在代码中设置主题:

复制代码 代码如下:

package com.test.shang;

import android.app.Activity;

import android.os.Bundle;

public class TestStyle extends Activity {

@Override

protected void onCreate (Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setTheme(R.style.CustomTheme);

setContentView(R.layout.test_style);

}

}

Android 中怎么设置全局自定义字体样式

使用stackoverflow软件进行修改。

操作

首先下载自定义字体,拷贝到工程中的assets文件夹下,建个新文件夹也可以。

创建一个继承自Application的类,放上TypeFace的变量。

将系统的serif的字体替换成微软雅黑。

最后自定义的主题。

Android系统自带样式Theme总结

本文从网上复制,给自己做笔记的,摘自:

Android系统自带样式(@android:style/) (转)

1 android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"

布局页面最上面 不会显示  android:icon="@drawable/ic_launcher"中的值和android:label="@string/app_name"的值。

2 android:theme="@style/AppTheme"

布局页面最上面 显示  android:icon="@drawable/ic_launcher"中的值和android:label="@string/app_name"的值。

其他

在AndroidManifest.xml文件的activity中配置

1、android:theme="@android:style/Theme"

默认状态,即如果theme这里不填任何属性的时候,默认为Theme

2、android:theme="@android:style/Theme.NoDisplay"

任何都不显示。比较适用于只是运行了activity,但未显示任何东西

3、android:theme="@android:style/Theme.NoTitleBar“

背景主题的没有标题栏的样式,默认如果没有设置的话,显示黑背景

4、android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

背景主题的没有标题栏且全屏的样式,默认为黑背景

5、android:theme="@android:style/Theme.Black"

默认状态下黑背景

6、android:theme="@android:style/Theme.Black.NoTitleBar"

黑背景主题的没有标题栏的样式

7、android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"

黑背景主题的没有标题栏且全屏的样式

8、android:theme="@android:style/Theme.Light"

默认状态下亮背景,与上述黑背景Theme.Black相反

9、android:theme="@android:style/Theme.Light.NoTitleBar"

亮背景主题的没有标题栏的样式,与Theme.Black.NoTitleBar相反

10、android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen"

亮背景主题的没有标题栏且全屏显示的样式,与Theme.Black.NoTitleBa.Fullscreenr相反

11、android:theme="@android:style/Theme.Dialog"

对话框样式 将整个activity变成对话框样式出现

12、android:theme="@android:style/Theme.InputMethod"

Window animations that are applied to input method overlay windows

13、android:theme="@android:style/ Theme.Panel"

删除掉所有多余的窗口装饰,在一个空的矩形框中填充内容,作用范围相当于把dialog中的所有元素全部去掉,只是一个空的矩形框,且此为默认的样式

14、android:theme="@android:style/ Theme.Light.Panel"

删除掉所有多余的窗口装饰,在一个空的矩形框中填充内容,作用范围相当于把dialog中的所有元素全部去掉,只是一个空的矩形框,且默认是light的样式

15、android:theme="@android:style/Theme.Wallpaper"

使用墙纸做主题,默认状态。

16、android:theme="@android:style/ Theme.WallpaperSettings"

使用墙纸做主题,默认是使用将上一个界面调暗之后作为主题

17、android:theme="@android:style/ Theme.Light.WallpaperSettings"

使用墙纸做主题,默认Light状态

18、android:theme="@android:style/Theme.Wallpaper.NoTitleBar"

使用墙纸做主题,且没有标题栏

19、android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"

使用墙纸做主题,且没有标题栏,且全屏显示

20、android:theme="@android:style/Theme.Translucent"

半透明状态下的背景,将运行此activity之前的屏幕作为半透明状态作为此activity运行时的样式。

21、android:theme="@android:style/Theme.Translucent.NoTitleBar"

半透明状态下没有标题栏的背景,将运行此activity之前的屏幕作为半透明状态作为此activity运行时的样式。

22、android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"

半透明状态下没有标题栏且全屏的背景,将运行此activity之前的屏幕作为半透明状态作为此activity运行时的样式。

摘自:


网页名称:android样式,android样式文件怎么创建
转载注明:http://myzitong.com/article/dscdhjh.html