- 浏览: 91286 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
wangyudong:
家里是拨号上网,不行的,找到了一个Holer工具,只需要配置一 ...
【如何通过广域网访问局域网的服务器?】 -
叮咚可乐名:
大数据就是这么任性第一季数据结构和算法http://pan.b ...
数据结构与算法-简介 -
戢_时光:
...
【Java集合之二】Set集合 -
lzg406:
HTTP默认方式下,使用持久连接。 这个值得推敲
【应用层】之一:HTTP协议与FTP协议 -
mute_:
特别腻害呢
正则表达式1:概念
本文围绕以下十个部分展开:
一、一些基本概念
二、更改App默认图标
三、一些基本控件
四、UI开发步骤
五、TextView
六、EditText
七、Button和ImageButton
八、ImageView
九、Widgets(其他控件)
附 关于在Android真机上部署
一、一些基本概念
1. UI
User Interface - 用户接口/用户界面
UI是用户能看见并可交互的组件。
分为:系统UI,自定义UI。
UI放在View和ViewGroup里面。
2. View和ViewGroup
View是屏幕上的一个矩形区域,负责绘制和事件处理;它是控件(widget)的基类。
ViewGroup是View的子类,是不可见的容器,负责管理其他View及它们的布局属性;它是布局和视图容器的基类。
二、更改App默认图标
更改之后,就会看到App图标已变为下图所示:
三、一些基本控件
四、UI开发步骤
1. 在 res -> values -> strings.xml 中,定义所有所需的文本 【字符串】
2. 在 res -> layout -> activity_main.xml 布局文件中,设计主活动布局 【布局】
3. 创建主活动里面包含的其他Activity 【界面】
创建一个新的Activity,需要进行以下四部分内容:
(1)创建布局文件,如 activity_text_view
(2)创建活动类,如 TextViewActivity
(3)创建菜单文件,如 menu_text_view
(4)在功能清单文件 AndroidManifest.xml 中,注册该Activity
如下是创建 TextViewActivity 的步骤:
同样的,以同样的方法接着创建 ButtonActivity、EditTextActivity、ImageViewActivity和WidgetsActivity。
4.填写主活动类的事件,将主活动与其他活动关联起来 【事件】
在活动类中写事件的时候,有以下几个小步骤:
(1)声明变量(所用到、要关联的控件都在此声明)
(2)初始化控件
(3)初始化适配器(将适配器关联数据)
(4)控件与适配器关联
(5)写控件的事件
(6)弹出显示指定文本(看是否需要弹出显示指定文本)
(7)指定意图(由当前界面跳转至指定界面)
(8)启动意图
代码说明:
数据要显示到视图上,中间得有适配器。如下图所示。
经过以上步骤开发之后的界面如下所示:
五、TextView
1. TextView属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
(2)在 activity_text_view.xml 布局文件中,设计布局
六、EditText
1. EditText属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
(2)在 activity_edit_text.xml 布局文件中,设计布局
七、Button和ImageButton
1. 用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
(2)在 activity_button.xml 布局文件中,设计布局
八、ImageView
1. ImageView属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
(2)在 activity_image_view.xml 布局文件中,设计布局
九、Widgets(其他控件)
1. 用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
(2)在 activity_widgets.xml 布局文件中,设计布局
附 关于在Android真机上部署
一、一些基本概念
二、更改App默认图标
三、一些基本控件
四、UI开发步骤
五、TextView
六、EditText
七、Button和ImageButton
八、ImageView
九、Widgets(其他控件)
附 关于在Android真机上部署
一、一些基本概念
1. UI
User Interface - 用户接口/用户界面
UI是用户能看见并可交互的组件。
分为:系统UI,自定义UI。
UI放在View和ViewGroup里面。
2. View和ViewGroup
View是屏幕上的一个矩形区域,负责绘制和事件处理;它是控件(widget)的基类。
ViewGroup是View的子类,是不可见的容器,负责管理其他View及它们的布局属性;它是布局和视图容器的基类。
二、更改App默认图标
更改之后,就会看到App图标已变为下图所示:
三、一些基本控件
四、UI开发步骤
1. 在 res -> values -> strings.xml 中,定义所有所需的文本 【字符串】
<resources> <string name="app_name">UI</string> <string name="hello_world">Hello world!</string> <string name="action_settings">Settings</string> <string name="text_view">TextView</string> <string name="edit_text">EditText</string> <string name="button">Button</string> <string name="image_view">ImageView</string> <string name="widgets">Widgets</string> </resources>
2. 在 res -> layout -> activity_main.xml 布局文件中,设计主活动布局 【布局】
<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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <!-- ListView :显示列表 (类似于HTML中的多行下拉列表框) --> <ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="wrap_content"> </ListView> </RelativeLayout>
3. 创建主活动里面包含的其他Activity 【界面】
创建一个新的Activity,需要进行以下四部分内容:
(1)创建布局文件,如 activity_text_view
(2)创建活动类,如 TextViewActivity
(3)创建菜单文件,如 menu_text_view
(4)在功能清单文件 AndroidManifest.xml 中,注册该Activity
如下是创建 TextViewActivity 的步骤:
同样的,以同样的方法接着创建 ButtonActivity、EditTextActivity、ImageViewActivity和WidgetsActivity。
4.填写主活动类的事件,将主活动与其他活动关联起来 【事件】
在活动类中写事件的时候,有以下几个小步骤:
(1)声明变量(所用到、要关联的控件都在此声明)
(2)初始化控件
(3)初始化适配器(将适配器关联数据)
(4)控件与适配器关联
(5)写控件的事件
(6)弹出显示指定文本(看是否需要弹出显示指定文本)
(7)指定意图(由当前界面跳转至指定界面)
(8)启动意图
package com.xiangdong.ui; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; public class MainActivity extends Activity { // 1.声明变量 private ListView listView; private String[] data = {"TextView", "EditText", "Button", "ImageView", "Widgets"}; private Class[] actions = {TextViewActivity.class, EditTextActivity.class, ButtonActivity.class, ImageViewActivity.class, WidgetActivity.class}; // 创建适配器 private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 加载布局文件 setContentView(R.layout.activity_main); // 2.初始化控件 (加载布局文件之后才能找到 id) listView = (ListView) findViewById(R.id.listView); // 3.初始化适配器(关联数据) // 参数:上下文,资源id显示方式,显示数据 adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data); // 4.控件与适配器关联 listView.setAdapter(adapter); // 5.控件的事件 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // 6.弹出显示指定文本(类似于 JS 中 alert,但停留时间后自动隐藏) // 参数:上下文,指定显示文本,停留时间 // 在内部类中显示当前活动的上下文:MainActivity.this // Toast.makeText(MainActivity.this, data[position],Toast.LENGTH_SHORT).show(); // 7.指定意图(由当前界面跳转至指定界面) // position 是 ListView 控件选中选项的下标值 Intent intent = new Intent(MainActivity.this, actions[position]); // 8.启动意图 startActivity(intent); } }); // 6.在本类显示指定文本 // Toast.makeText(this, R.string.text_view,Toast.LENGTH_LONG).show(); // Toast.makeText(this, "asdf",Toast.LENGTH_SHORT).show(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
代码说明:
数据要显示到视图上,中间得有适配器。如下图所示。
经过以上步骤开发之后的界面如下所示:
五、TextView
1. TextView属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
<!-- TextView --> <string name="normal_text">普通文本</string> <string name="font_text">设置了字号,颜色及背景的文本</string> <string name="image_text">文本周围显示图片</string> <string name="link_text">自动链接及换行:\n电话:10010\nEmail:lxd12103@126.com\nURL:xiangdonglee.iteye.com</string> <string name="show_text">显示文本的方式:最大、最小行数;是否单行;是否省略;跑马灯</string>
(2)在 activity_text_view.xml 布局文件中,设计布局
<LinearLayout 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:orientation="vertical" 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=".TextViewActivity"> <!--LinearLayout 线性布局 orientation:定位/方向 horizontal:水平线性布局(基于 X 轴对齐) vertical:垂直线性布局(基于 Y 轴对齐) --> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:paddingTop="8dp" android:text="@string/normal_text"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/white" android:paddingBottom="8dp" android:paddingTop="8dp" android:text="@string/font_text" android:textColor="@android:color/holo_blue_bright" android:textSize="18sp"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:drawableLeft="@android:drawable/ic_btn_speak_now" android:paddingBottom="8dp" android:paddingTop="8dp" android:text="@string/image_text"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:autoLink="all" android:linksClickable="true" android:paddingBottom="8dp" android:paddingTop="8dp" android:text="@string/link_text" android:textColorLink="@android:color/holo_orange_light"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:maxLines="3" android:paddingBottom="8dp" android:paddingTop="8dp" android:text="@string/show_text"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingBottom="8dp" android:paddingTop="8dp" android:singleLine="true" android:text="@string/show_text"/> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="middle" android:paddingBottom="8dp" android:paddingTop="8dp" android:singleLine="true" android:text="@string/show_text"/> <!-- ellipsize 省略的位置 (start/end/middle)--> <!-- 跑马灯效果 --> <!-- ellipsize=marquee:跑马灯效果 --> <!-- focusableInTouchMode:触控获得焦点--> <!-- focusable:可触控--> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:paddingBottom="8dp" android:paddingTop="8dp" android:singleLine="true" android:text="@string/show_text"/> </LinearLayout>
六、EditText
1. EditText属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
<!-- EditText--> <string name="username_hint">用户名</string> <string name="password_hint">密码</string> <string name="phone_hint">手机号</string> <string name="email">lxd12103@126.com</string> <string name="remark_hint">备注</string>
(2)在 activity_edit_text.xml 布局文件中,设计布局
<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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".EditTextActivity"> <EditText android:id="@+id/txtUsername" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/username_hint" android:imeOptions="actionNext"/> <EditText android:id="@+id/txtPassword" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/txtUsername" android:hint="@string/password_hint" android:inputType="textPassword"/> <EditText android:id="@+id/txtPhone" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/txtPassword" android:hint="@string/phone_hint" android:inputType="phone"/> <EditText android:id="@+id/txtRemark" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/txtPhone" android:hint="@string/remark_hint" android:minLines="3"/> <EditText android:id="@+id/txtEmail" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/txtRemark" android:hint="@string/phone_hint" android:text="@string/email" android:inputType="textEmailAddress" android:selectAllOnFocus="true"/> </RelativeLayout>
七、Button和ImageButton
1. 用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
<!-- Button --> <string name="btn_ok">Click me</string> <string name="btn_less_border">无边框的按钮</string>
(2)在 activity_button.xml 布局文件中,设计布局
<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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.xiangdong.ui.ButtonActivity"> <TextView android:id="@+id/tvUsername" android:text="@string/button" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <EditText android:id="@+id/txtUsername" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/tvUsername" android:hint="@string/username_hint"/> <Button android:id="@+id/btnOK" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/txtUsername" android:text="@string/btn_ok" android:drawableLeft="@android:drawable/alert_dark_frame" android:onClick="clickMe"/> <Button android:id="@+id/btnLessBorder" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/txtUsername" android:layout_alignParentRight="true" android:text="@string/btn_less_border" style="?android:borderlessButtonStyle"/> <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/btnOK" android:src="@android:drawable/btn_minus"/> <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_below="@id/btnOK" android:src="@android:drawable/btn_minus" style="?android:borderlessButtonStyle"/> <!-- 图片的文件名只能是字母 或 字母+数字 --> <ImageView android:layout_width="wrap_content" android:layout_height="200dp" android:layout_alignParentBottom="true" android:src="@drawable/cameraapp" android:contentDescription="@string/camera"/> </RelativeLayout>
八、ImageView
1. ImageView属性
2.用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
<!-- ImageView --> <string name="camera">Camera</string>
(2)在 activity_image_view.xml 布局文件中,设计布局
<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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.xiangdong.ui.ImageViewActivity"> <LinearLayout android:id="@+id/linearLayout1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:gravity="center" android:orientation="horizontal"> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="center" android:src="@drawable/gps" android:contentDescription="gps"/> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="centerCrop" android:src="@drawable/gps" /> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="centerInside" android:src="@drawable/gps" /> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="matrix" android:src="@drawable/gps" /> </LinearLayout> <LinearLayout android:id="@+id/linearLayout2" android:layout_width="match_parent" android:layout_height="64dp" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_below="@+id/linearLayout1" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="center" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="centerCrop" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="centerInside" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="matrix" /> </LinearLayout> <LinearLayout android:id="@+id/linearLayout3" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_below="@+id/linearLayout2" android:gravity="center" android:orientation="horizontal"> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="fitCenter" android:src="@drawable/gps" /> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="fitEnd" android:src="@drawable/gps" /> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="fitStart" android:src="@drawable/gps" /> <View android:layout_width="16dp" android:layout_height="match_parent" /> <ImageView android:layout_width="72dp" android:layout_height="72dp" android:background="@android:color/black" android:scaleType="fitXY" android:src="@drawable/gps" /> </LinearLayout> <LinearLayout android:id="@+id/linearLayout4" android:layout_width="match_parent" android:layout_height="64dp" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_below="@+id/linearLayout3" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="fitCenter" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="fitEnd" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="fitStart" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:text="fitXY" /> </LinearLayout> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/linearLayout4" android:layout_centerHorizontal="true" android:src="@drawable/gps" /> </RelativeLayout>
九、Widgets(其他控件)
1. 用代码实现,展示效果
(1)在 strings.xml 中添加需要的文本
<!-- Widgets --> <string name="cb_sports">Sports</string> <string name="cb_read">Read</string> <string name="cb_game">Game</string> <string name="rb_male">Male</string> <string name="rb_female">Female</string> <string name="switch_text">开关控件</string>
(2)在 activity_widgets.xml 布局文件中,设计布局
<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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.xiangdong.ui.WidgetActivity"> <LinearLayout android:id="@+id/hobbyLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <!-- 在线性布局中设置 权重:layout_weight 占整个的几份 --> <CheckBox android:id="@+id/cbSports" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/cb_sports" android:layout_weight="1"/> <CheckBox android:id="@+id/cbGame" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/cb_game" android:checked="true" android:layout_weight="1"/> <CheckBox android:id="@+id/cbRead" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/cb_read" android:layout_weight="1"/> </LinearLayout> <!-- RadioGroup类似于线性布局,只是进行了封装。 --> <RadioGroup android:id="@+id/sexGroup" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/hobbyLayout" android:orientation="horizontal" android:paddingTop="10dp"> <RadioButton android:id="@+id/rbMale" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/rb_male"/> <RadioButton android:id="@+id/rbFemale" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:checked="true" android:text="@string/rb_female" /> </RadioGroup> <!--可以重用Button--> <Button android:id="@+id/btnOK" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_ok" android:layout_below="@+id/sexGroup" android:onClick="onClick"/> <Switch android:id="@+id/switch1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/btnOK" android:layout_marginBottom="16dp" android:layout_marginTop="16dp" android:checked="false" android:text="开关控件"/> <SeekBar android:id="@+id/seekBar" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/switch1" android:layout_marginBottom="16dp"/> <RatingBar android:id="@+id/ratingBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/seekBar" android:rating="2"/> <!--numStars:星星数量--> <!--rating:评分数--> <!--stepSize:步长,可以是 0.5 --> <!--style:默认为大的星星,可用点击--> <RatingBar android:id="@+id/ratingBar2" style="@android:style/Widget.DeviceDefault.Light.RatingBar.Small" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/ratingBar" android:layout_marginBottom="16dp" android:numStars="10" android:rating="7" android:stepSize="1"/> <ProgressBar android:id="@+id/progressBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/ratingBar2" android:layout_centerHorizontal="true"/> </RelativeLayout>
附 关于在Android真机上部署
发表评论
-
【攻克Android (43)】WebView (网络视图)
2015-09-09 22:15 1253本文围绕以下两个部分展开: 一、WebView WebVi ... -
WebView (网络视图)
2015-09-09 22:12 0本文围绕以下两个部分展开: 一、WebView WebVi ... -
【攻克Android (41)】HttpURLConnection
2015-09-08 17:43 1361本文围绕以下三个部分展开: 一、HttpURLConnec ... -
HttpURLConnection
2015-09-08 17:42 0本文围绕以下三个部分展开: 一、HttpURLConnec ... -
【攻克Android (40)】JSON解析
2015-09-07 20:49 1274本文围绕以下三个部分 ... -
JSON解析
2015-09-07 20:47 0本文围绕以下三个部分 ... -
【攻克Android (39):XML解析之四】Simple方式解析XML
2015-08-27 18:38 1750本文围绕以下三个部分 ... -
【攻克Android (38):XML解析之三】Pull方式解析XML
2015-08-27 09:25 1738本文围绕以下两个部分展开: 一、Pull解析 案例一:P ... -
【攻克Android (37):XML解析之二】SAX方式解析XML
2015-08-26 15:15 876本文围绕以下两个部分展开: 一、SAX解析 案例一 ... -
【XML解析之一】SAX方式解析XML
2015-08-26 02:58 0本文围绕以下四个部分展开: 一、SAX解析 案例一 ... -
【攻克Android (36):XML解析之一】DOM方式解析XML
2015-08-26 00:27 946本文围绕以下三个部分展开: 一、XML概述 二、DOM解析 ... -
DOM方式解析XML案例
2015-08-26 00:26 0本文围绕以下四个部分展开: 一、DOM解析 案例一 ... -
【XML解析之四】Simple方式解析XML
2015-08-27 18:36 0本文围绕以下三个部分 ... -
【XML解析之一】Pull方式解析XML
2015-08-26 02:56 0本文围绕以下四个部分展开: 一、Pull解析 案例一:P ... -
【攻克Android (22)】View/Tween Animation 视图动画(补间动画)
2015-08-25 21:22 885本文围绕以下四个部分 ... -
【攻克Android (22)】View/Tween Animation 视图动画(补间动画)
2015-08-25 21:21 0本文围绕以下四个部分 ... -
【攻克Android (45)】四大组件之 ContentProvider
2015-08-18 16:24 1118本文围绕以下两个部分展开: 一、ContentProvide ... -
【攻克Android (32)】Notification 通知
2015-08-17 19:57 952本文围绕以下两个部分展开: 一、通知 案例一 一 ... -
Notification 通知
2015-08-17 19:56 0本文围绕以下两个部分展开: 一、通知 案例一 一 ... -
BroadcastReceiver完整版
2015-08-17 13:15 0本文围绕以下四个部分展开: 一、广播 案例一:系统广播(属于 ...
相关推荐
这个项目不仅涵盖了Android应用的基本架构,还涉及到网络通信、数据存储、UI设计等多方面内容,是学习Android开发的绝佳实例。 首先,从Android应用的基本架构来看,“Fanfoudroid”采用了MVP(Model-View-...
【攻克Data动态获取网页评论,保存数据库】是一个关于利用特定工具——攻克Data,来抓取网页上的评论数据并存储到数据库的过程。这个过程涉及到网络爬虫技术、JSON解析以及数据库管理等多个IT领域的知识点。 1. **...
在开始Linux的学习之旅前,首先需要了解如何安装Linux操作系统。常见的Linux发行版有Ubuntu、Fedora、Debian等,本教程将详细解释如何下载ISO镜像文件,创建启动U盘,以及通过BIOS设置进行安装过程。同时,还会讲解...
本文给大家分享高级UI特效仿直播点赞效果—一个优美炫酷的点赞动画,具体实现代码大家参考本文。 效果图如下: 攻克难点: 心形图片的路径等走向 心形图片的控制范围 部分代码如下: 通过AbstractPathAnimator定义...
3ds Max全面攻克_全面实例精解_CD43ds Max全面攻克_全面实例精解_CD43ds Max全面攻克_全面实例精解_CD43ds Max全面攻克_全面实例精解_CD43ds Max全面攻克_全面实例...全面实例精解_CD43ds Max全面攻克_全面实例精解_CD4
根据提供的信息,“24学时攻克C++”这本书旨在通过一系列高效的学习计划帮助读者在较短的时间内掌握C++编程语言。尽管仅上传了23页的内容,我们仍然可以从书名、描述以及部分可见的内容中推断出一些关键知识点。 ##...
标题中的“新东方8天攻克8000单词魔鬼训练营”揭示了一个高效学习英语单词的课程项目。新东方作为知名的教育机构,以其在英语教学领域的专业性而著称,这个训练营可能是一个针对英语学习者设计的高强度、短期记忆...
《24小时攻克C++代码》是一门针对C++编程语言深入浅出的学习教程,旨在帮助初学者在短时间内掌握C++编程基础,并逐步提升至进阶水平。C++是一种广泛应用的面向对象编程语言,它的强大功能和高效性能使得它在系统软件...
【备战2014】高考地理 精讲巧解分类攻克4
【备战2014】高考生物 精讲巧解分类攻克4
【备战2014】高考历史 精讲巧解分类攻克4
在“一招一式攻克Linux系列讲座(之二)——第二招Linux的基本配置”中,我们深入探讨了Linux操作系统安装后的基础配置和操作,包括登录、密码管理以及用户账号创建等关键环节。这对于熟练掌握Linux系统至关重要。 ...
- **核心概念理解:** 掌握Activity、Intent、Service、Broadcast Receiver等基本组件的概念对于Android开发至关重要。这些组件构成了Android应用的基本结构。 **5. 使用Flash、Flex与AIR开发Android应用** - **...
在Android平台上实现自动来电录音是一项技术挑战,但并非无法攻克。Android系统提供了丰富的API和工具,使得开发者可以创建各种功能丰富的应用,包括来电录音。在本文中,我们将深入探讨如何利用Android的...
函数是C++编程的基本构建块之一,它们允许代码复用和模块化。函数声明通常放在`.h`头文件中,而函数定义则放在`.cpp`文件中。理解函数参数的传值和传址机制对于避免常见的编程陷阱至关重要。另外,遵循良好的代码...
在学习编程语言C++的过程中,24学时的课程安排是一个相当常见的学习进度,这个压缩包文件名为"24学时攻克C++源码及习题答案",显然是为初学者设计的一套完整教程。C++是面向对象编程的重要语言,它的强大功能和广泛...
大学生攻克Linux系统教程(又名天下没有难学的Linux)。一位在校大学生整理的教程,献给每一位要征服Linux的学习者-五星级的Linux教程。 本书汇集众多Linux学习者的心血与贡献,有很多作者在默默的为你呼喊,感谢...
8天攻克8000词汇,word版,方便学习,背单词的好东东
快速阅读技巧和攻克阅读四步法是提升阅读效率和理解能力的重要方法,尤其适用于面对大量信息和考试场景,如TOEFL考试。首先,快速阅读的精髓在于抓住每一段的关键信息,即首句。因为文章的逻辑往往在段首得到展现,...
【备战2014】高考数学精讲巧解分类攻克4是针对高中毕业生备考高考数学的重要参考资料,旨在通过精选题目和解析,帮助学生系统性地掌握各类数学知识点,提高解题能力和应试技巧。 1. **选择题**:选择题是高考数学中...