安卓天天练练(一)不讨巧的绝对布局
IDE 采用eclipse luna
使用了AbsoluteLayout标签后IDE立即开始警告:“AbsoluteLayout is deprecated”,不赞成使用绝对布局(无视它)
》需要注意
- 如果看到报错"[Accessibility]Missing conetent description attribute on image"教学中也有出现,无视之
- Graphical Layout的预览报java.lang错误却常常是xml标签未闭合,检查各标签>和/>
- <Button />和<TextView />等等,无value内容的标签均可改写为自闭合
- <EditText />可以从Graphical Layout工具的Palette中TextView分类任意可编辑文本框拖出来
- <ScrollView></ScrollView>需要闭合标签
- 手生敲xml注意区分android:@+id/和@id/
- objname.setOnClickListener不会自动完成,但是在其内部的new View.OnClickListener()可以自动生成重写以及定义onClick函数
- 熟练使用(tagname)findViewById(R.id.xxx)
- 书写getText().toString()和setText().toString()
src/com.narumi.absolutelayout/MainActivity.java
1 package com.narumi.absolutelayout; 2 3 import android.app.Activity; 4 import android.os.Bundle; 5 import android.view.Menu; 6 import android.view.MenuItem; 7 import android.view.View; 8 import android.widget.Button; 9 import android.widget.EditText; 10 11 public class MainActivity extends Activity { 12 13 @Override 14 protected void onCreate(Bundle savedInstanceState) { 15 super.onCreate(savedInstanceState); 16 setContentView(R.layout.activity_main); 17 final Button okButton = (Button) findViewById(R.id.btnok); 18 final Button cancelButton = (Button) findViewById(R.id.btcel); 19 final EditText uid = (EditText) findViewById(R.id.etuid); 20 final EditText pwd = (EditText) findViewById(R.id.etpwd); 21 final EditText log = (EditText) findViewById(R.id.etres); 22 okButton.setOnClickListener( 23 new View.OnClickListener() { 24 25 @Override 26 public void onClick(View v) { 27 // TODO Auto-generated method stub 28 String uidStr = uid.getText().toString(); 29 String pwdStr = pwd.getText().toString(); 30 log.append("用户名:"+uidStr+"密码:"+pwdStr+"\n"); 31 } 32 } ); 33 34 cancelButton.setOnClickListener( 35 new View.OnClickListener() { 36 37 @Override 38 public void onClick(View v) { 39 // TODO Auto-generated method stub 40 uid.setText(""); 41 pwd.setText(""); 42 } 43 } ); 44 } 45 46 @Override 47 public boolean onCreateOptionsMenu(Menu menu) { 48 // Inflate the menu; this adds items to the action bar if it is present. 49 getMenuInflater().inflate(R.menu.main, menu); 50 return true; 51 } 52 53 @Override 54 public boolean onOptionsItemSelected(MenuItem item) { 55 // Handle action bar item clicks here. The action bar will 56 // automatically handle clicks on the Home/Up button, so long 57 // as you specify a parent activity in AndroidManifest.xml. 58 int id = item.getItemId(); 59 if (id == R.id.action_settings) { 60 return true; 61 } 62 return super.onOptionsItemSelected(item); 63 } 64 }
下面两个自动生成的方法可以不要:
onCreateOptionsMenu
public boolean onOptionsItemSelected
编辑res/value中的string.xml
<?xml version="1.0" encoding="utf-8"?> <resources><string name="app_name">Android_6_3</string><string name="uid">用户名</string><string name="pvd">密码</string><string name="ok">确定</string><string name="cancel">取消</string> </resources>
编辑res/layout中的activity_main.xml
1 <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:paddingBottom="@dimen/activity_vertical_margin" 6 android:paddingLeft="@dimen/activity_horizontal_margin" 7 android:paddingRight="@dimen/activity_horizontal_margin" 8 android:paddingTop="@dimen/activity_vertical_margin" 9 tools:context="com.narumi.absolutelayout.MainActivity" > 10 11 <TextView 12 android:id="@+id/tvuid" 13 android:layout_width="fill_parent" 14 android:layout_height="wrap_content" 15 android:text="@string/uid" /> 16 17 <TextView 18 android:id="@+id/tvpwd" 19 android:layout_width="fill_parent" 20 android:layout_height="wrap_content" 21 android:layout_x="21dp" 22 android:layout_y="61dp" 23 android:text="@string/pvd" /> 24 25 <EditText 26 android:id="@+id/etuid" 27 android:layout_width="167dp" 28 android:layout_height="wrap_content" 29 android:layout_x="61dp" 30 android:layout_y="-12dp" 31 android:ems="10" 32 android:inputType="text" > 33 </EditText> 34 35 <EditText 36 android:id="@+id/etpwd" 37 android:layout_width="168dp" 38 android:layout_height="34dp" 39 android:layout_x="59dp" 40 android:layout_y="55dp" 41 android:ems="10" 42 android:inputType="numberPassword" > 43 </EditText> 44 45 <ScrollView 46 android:id="@+id/scrollView1" 47 android:layout_width="wrap_content" 48 android:layout_height="wrap_content" 49 android:layout_x="48dp" 50 android:layout_y="144dp" > 51 </ScrollView> 52 53 <EditText 54 android:id="@+id/etres" 55 android:layout_width="wrap_content" 56 android:layout_height="139dp" 57 android:layout_x="31dp" 58 android:layout_y="260dp" 59 android:ems="10" 60 android:inputType="text" > 61 62 </EditText> 63 64 <Button 65 android:id="@+id/btnok" 66 android:layout_width="wrap_content" 67 android:layout_height="wrap_content" 68 android:layout_x="72dp" 69 android:layout_y="175dp" 70 android:text="@string/ok" /> 71 72 <Button 73 android:id="@+id/btcel" 74 android:layout_width="wrap_content" 75 android:layout_height="wrap_content" 76 android:layout_x="165dp" 77 android:layout_y="175dp" 78 android:text="@string/cancel" /> 79 80 </AbsoluteLayout>
就这么简单,一练结束。
转载于:https://www.cnblogs.com/haimingpro/p/4664101.html
安卓天天练练(一)不讨巧的绝对布局相关推荐
- 安卓天天练练(十一)用list绑数据
之前在练练ListView的时候就有个 BaseAdapter ba = new BaseAdapter() { 用Adapter来绑数据的方法,该方法中 LinearLayout ll=new Li ...
- 安卓基础控件(EditText、Button)以及布局(约束布局)的介绍
安卓基础控件(EditText.Button)以及布局(约束布局)的介绍 目录 一.EditText 代码展示 二.Button 代码展示 三.应用例子 (1)布局代码展示 (2)方法 代码例子 (3 ...
- 安卓开发之用RecyclerView做陈列式布局(仿小红书首页/淘宝商品浏览)
安卓开发之用RecyclerView做陈列式布局 一.使用RecyclerView要先导入recyclerview-v7库 二.在layout文件夹内,新建一个xml文件,编写你要展示的item的样式 ...
- 利用安卓天天模拟器进行HBuilder App开发
HBuilder中右侧自带了内置浏览器,可以实时看到效果,但是对于一些需要调用plus才能显示的效果就无能为力了. 如果用真机进行调试,连接电脑装驱动,每次都得检测,有的手机电脑都检测不到,我的就是- ...
- 安卓天天酷跑脚本刷高分图文教程
http://news.gamedog.cn/a/20130923/241742.html
- android java与界面的关联_Android Studio安卓学习笔记(三)Android用户界面的设计布局与组件(一)用户界面布局设计(1)...
当我们创建了一个安卓项目后,我们会发现真正建立一个完善的安卓项目并不是想象的那么容易.其实和设计GUI可视化界面一样,开发安卓也需要考虑很多方面,主要考虑的还是界面布局和需要的组件. 一:Androi ...
- android天气时钟设计报告,做一款自己的安卓天气闹钟(1)——首页界面布局
写在前面 这一次是要结合前面做的一堆爬虫,语音之类的做一个终端的东西,是一款可以显示天气的闹钟APP,自己也是一边做一边学,如果有什么不对的地方欢迎大家指正 先看设计界面 首页界面 中间时间贼丑的字体 ...
- Android Studio安卓学习笔记(三)Android用户界面的设计布局与组件(一)用户界面布局设计(1)...
当我们创建了一个安卓项目后,我们会发现真正建立一个完善的安卓项目并不是想象的那么容易.其实和设计GUI可视化界面一样,开发安卓也需要考虑很多方面,主要考虑的还是界面布局和需要的组件. 一:Androi ...
- 【安卓开发 】Android初级开发(零)各种布局
线性布局的重要属性 (LinearLayout) 相关属性链接 layout_width 和 layout_height是布局器相对于外部构件的一个宽高距离. layout_margin是指与外部控件 ...
最新文章
- EL:谁说N素含量高就不固氮了(本研究反而“多多益善”)
- 基于requests模块的cookie,session和线程池爬取
- 我隐藏的Excel工作表 你别想取消
- 王某调离岗位后所使用计算机由新到任陈某,2017年沧州事业单位考试模拟卷
- gateway坑点:gateway有Controller时会直接处理对应的路径并返回
- 还有前景吗_喷码机行业还有前景吗 2021喷码机市场份额有多大
- 【LeetCode笔记】6. Z字形变化(JAVA、思路)
- php 网站域名怎么更换,教你如何快速给网站更换域名,简单粗暴!
- parzen窗估计如何进行结果分析_Parzen窗方法的分析和研究
- Open3d之非阻塞可视化
- 中南大学oj:1352: New Sorting Algorithm
- aix系统vi修改命令_aix系统VI编辑器的操作
- Vue中select默认选中下拉选项第一条(举例iview AutoComplete组件)
- iAntares OSx86 10.6.5 v3.2 繁简英整合版 安装过程【安装过程问题说明】
- 2021react复习
- 宏晶微MS2109高清视频采集芯片资料
- matlab centralize,智课雅思词汇---二十三、动词性后缀-ate-fy-ish-ize
- 计算机丢失msvcr100.dll解决办法,如何解决Msvcr100.dll丢失问题?两种方法可以解决...
- 解决外网下载速度过慢问题
- “苏宁SAP上线“有感(原)
热门文章
- 苹果WWDC 2023发布会总结
- java画虚线_画流动虚线框(java) | 学步园
- python异步编程案例之Future和Task
- 以太坊Web3.js开发基础
- 分享一招在线图片合成gif方法,轻松在线做gif图
- RSA攻击之Rabin密码体制
- 计算机算法设计与分析第四版复习,计算机算法设计与分析(第4版)第1章.ppt
- vue3 + typescript + antd-design-vue(3.x)Modal.form()
- 工厂设备维修管理软件系统
- 用户画像的构建与使用1