android学习第一天

来源:互联网 发布:网络语言bbs是什么意思 编辑:程序博客网 时间:2024/05/01 23:40

写在前面:

    昨天在淘宝上买了一本关于android开发的书,不过这本书真是坑爹啊,错误一大片,连我这顶级菜鸟都能看出来这么多的错误,这本书的质量就可想而知了,作者还曾经就职于国际it巨头,难道这年头没啥是真的了吗?it巨头的员工就这水平么?我当然不怀疑作者的水平,只是怀疑作者出书的目的:是为赚钱还是为了育人?很明显前者要多一些,所以造成了这本书的质量有点二,不过抱怨归抱怨,还是看吧,今天是学习的第一天,做些笔记。

1、文字标签TextView

要想在java代码里修改xml文件中定义的TextView中的内容,可以用setText()方法,具体为

public final void setText(CharSequence text)

public final void setText(int resId) //可以直接使用strings.xml中定义的字符串常量

public final void setText(char[] text,int start,int len)


CharSequence是一个接口,而String实现了这个接口,因此可以在setText()方法中传入一个字符串参数

TextView中的显示的内容不支持HTML标签,即如果字符串是html代码,那么TextView会原样显示出来

如果设置android:autoLink = "true" 则如果显示的字符串内有电话号码、邮箱或者网址时会加上超链接,点击会自动连接到默认的启动程序上。

如果要再xml中使用res中定义的颜色常量的话,须自己手动建立一个color.xml文件,大致的内容如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <drawable name = "white">#ffffff</drawable>
    <drawable name="orange">#ffff00</drawable>
    
</resources>

在xml中引用时,使用@drawable/white引用color.xml中定义的颜色常量

可以在java代码里用setBackgroundDrawable(Drawable drawable)设置一个组件的背景色,但是如何获取这个drawable对象呢?用以下代码获得:

Resources rescources = getResources();

Drawable drawable = rescources.getDrawable(R.drawable.white);

当然,获得其他的资源drawable同样也可以用这种方法

在Activity内直接调用String getString(R.string.app_name)返回资源id代表的字符串常量2

2、如何获取手机分辨率

通过下面一段代码可以获取手机的分辨率:

DisplayMetrics dm = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(dm);

dm.widthPixels //分辨率宽

dm.heightPixels //分辨率高


3、样式修饰文件

我们可以使用类似css样式的方法来制定xml文件里组件的样式,

新建一个style.xml文件,保存在values文件夹下,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name = "style_1">
        <item name = "android:textSize">30sp</item>
        <item name = "android:textColor">#ff0000</item>    
        <item name = "android:gravity">center</item>
    </style>
    
</resources>

在组件xml文件中通过 style = "@style/style_1"来引用此修饰文件


//over :)








原创粉丝点击