Android中利用xml文件布局修改Helloworld程序

所属分类: 软件编程 / Android 阅读数: 340
收藏 0 赞 0 分享

Android环境布置完毕,直接就是一个Helloworld程序,详情请看《利用adt-bundle轻松搭建Android开发环境与Hello world(Linux)》这使得很多人难以理清整个Android项目的基本结构。其实安卓项目,与其它Java工程的项目,SSH、Servlet等,都是采取Java与XML文件联合的方式,形成一个工程的。

有几个文件是需要熟知的。如下图:


MainActivity.java是整个安卓工程的入口,

其中,里面的protected void onCreate(Bundle savedInstanceState) {}方法中的setContentView(R.layout.activity_main);方法指明,要加载res文件下的activity_main.xml的布局文件。之所以可以这样搞。是因为它有一个Eclipse会自动更新的gen文件夹。gen文件夹的R.java文件,会随你的xml更新而更新。


因此,之后,我们为了达到如下的效果,修改Helloworld程序成一个在整个屏幕内垂直居中的红色字符串,如下图所示:


我们就要改动res文件下的activity_main.xml。如下图:


这里原本就有一个TextView的组件,类似于vb,c++,c#的Label组件的标签文本的东西。很正常嘛,因为原来的Helloworld程序就是有一个Helloworld文本在apk的左上角。

我们将其的代码修改成这样,最终就如上图所示:

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

  <TextView
    android:gravity="center_vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:text="@string/hello_world" 
    style="@style/text_style"
    />

</RelativeLayout>

其android:layout_width="fill_parent",android:layout_height="fill_parent"两个属性意为,这个Label标签的控件的大小是占据整个屏幕的。

这样,才能通过android:gravity="center_vertical"属性,使其在屏幕内居中,这里Android4.0开发,layout_gravity好像已经不管用了,直接用gravity属性。

之后这个组件的文本在string.xml的hello_world标签中,这里也可以直接写出相应的值,不过Eclipse会出现警告,因为,如同struts2倡导的那样,把所有东西都用标签表示,便于以后的国际化。在struts2中真的没必要这样做了。在安卓中,这样起码能够适应各个屏幕还能说得过去。

因此我们接下去要修改values文件夹下的strings.xml文件了。找到name=hello_world的这个字符串,改成你要改的东西。当然,这里你也可以改改程序的标题app_name,把Helloworld改成“你好,世界”汉化一下这个程序。


可以在activity_main.xml中看到,这个TextView组件的样式在strings.xml指定的text_style项,之后我们再改改styles.xml,再里面加入一个text_style项,如下代码,给这个Hellowssssssssssssssssorld!字符串加粗变红,这个strings.xml一如网页开发中的css文件。这里唯一值得注意的是,在安卓中的单位是sp,而不是px,这有利于你的安卓程序运行于各大设备。

<style name="text_style">
    <item name="android:textSize">24sp</item>
    <item name="android:textColor">#ff0000</item>
    <item name="android:textStyle">bold</item>
  </style>

弄好之后如下图所示:


这样就得到如下的效果了:


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Android中加入名片扫描功能实例代码

这篇文章主要介绍了Android中加入名片扫描功能实例代码的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Android仿微信发表说说实现拍照、多图上传功能

这篇文章主要为大家详细介绍了Android仿微信发表说说实现拍照、多图上传功能,使用Retrofit2.0技术,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

设置Android系统永不锁屏永不休眠的方法

在进行Android系统开发的时候,有些特定的情况需要设置系统永不锁屏,永不休眠。本篇文章给大家介绍Android 永不锁屏,开机不锁屏,删除设置中休眠时间选项,需要的朋友一起学习吧
收藏 0 赞 0 分享

Android Retrofit 2.0框架上传图片解决方案

这篇文章主要介绍了Android Retrofit 2.0框架上传一张与多张图片解决方案,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android自定义等待对话框

这篇文章主要为大家详细介绍了Android自定义等待对话框的实现方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android中Window添加View的底层原理

这篇文章主要介绍了Android中Window添加View的底层原理,需要的朋友可以参考下
收藏 0 赞 0 分享

Android调用系统默认浏览器访问的方法

这篇文章主要介绍了Android调用系统默认浏览器访问的方法的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Android开发退出程序的方法汇总

Android程序有很多Activity,比如说主窗口A,调用了子窗口B,子窗口B又调用子窗口C,back返回子窗口B后,在B中如何关闭整个Android应用程序呢? 下面脚本之家小编就给大家介绍android开发退出程序的几种方法,感兴趣的朋友参考下吧
收藏 0 赞 0 分享

Android程序开发中单选按钮(RadioGroup)的使用详解

在android程序开发中,无论是单选按钮还是多选按钮都非常的常见,接下来通过本文给大家介绍Android程序开发中单选按钮(RadioGroup)的使用,需要的朋友参考下吧
收藏 0 赞 0 分享

Android实现仿网易今日头条等自定义频道listview 或者grideview等item上移到另一个view中

这篇文章主要介绍了Android实现仿网易今日头条等自定义频道listview 或者grideview等item上移到另一个view中 的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多