刚入门不久,没学JAVA,从C++转过来的,C++的QT和安卓简直有异曲同工之妙,为了加深自己对安卓的理解,特写博客以记录,望大神们多多指点。

效果图,刚入门的话,肯定要熟悉基本的控件的使用,这跟我学QT的方法是一样的,多是在xml里面操作。

首先,请允许我介绍一下这几个控件的基本属性。申明:图片来源于imooc网的攻城狮第一季中的PPT

从第一个开始到最后一个,我必须强调下,前面的最简单的属性是每个控件所共有的属性,后面添加的均为控件特有的属性。

最重要的是每个控件的id属性。每一个控件都有且仅有一个唯一的id在R文件中定义。也就是说,这是控件必不可少的属性,因为我们查找控件的时候是通过findViewById(R.id.XX); ,然后再强制转化为你需要的类型。

现在,我开始记录一下,我当时是怎么来实现这个demo的,这个demo对大家来说,都很简单,但是对于初学者的我来说,有着很重大的意义,他是一次将所学的控件的一次系统性总结。

首先,我们在Layout里面拖动按钮进入模拟器。博主用的是fragment_main.xml(默认名称),拖动5个TextView排好版,来显示自己需要的文字,然后拖动4个editText,来实现输入,在editText中加入hint属性,输入你想要表达的,拖动一个button,和一个ImageButton,把button的Text属性设置为你想要的。然后在再imageButton中的src=""加入你想要的图片。

我觉得这几张图片足矣概括一切。我也就不多啰嗦了。这里我就说一下监听器吧。

private Button loginButton; //初始化一个Button类的对象
private AutoCompleteTextView lover;
private String[] res= {"XXX,我爱你","XXX,好好学习","XXX,努力过CET-4"};
protected void onCreate(Bundle savedInstanceState) {              //系统自动生成的onCreate函数
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);                               //博主用的fragment_main所以加载的是他

//1.初始化控件,找到控件
//2.设置适配器
//3.绑定适配器
lover = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);   //autoCompleteTextView1这就是id号

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.abc_list_menu_item_checkbox, res);

//这是String类型的数组适配器,他匹配的是String类型的数据,其中有三个参数,分别是,上下文,样式属性,以及匹配的内容。

lover.setAdapter(adapter);    //将适配器绑定在lover上面(AutoCompleteTextView类型)

//我们在fragment.xml上面看到的都是view(父类);
loginButton = (Button) findViewById(R.id.button1);
//设置loginButton的监听器,通过监听器实现我们想要的操作
loginButton.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// 在当前方法中监听点击button的动作
Toast.makeText(MainActivity.this, "XXX,我爱你", 1).show();

}
});
}

本博文属博主原创,如需转载请注明作者

作者:Ten10

Android初步 简单demo的更多相关文章

  1. android JNI 简单demo(2)它JNI demo 写

    android JNI 简单demo(2)它JNI demo 写 一.搭建Cygwin 环境:http://blog.csdn.net/androidolblog/article/details/25 ...

  2. PHP多进程学习(一)__来初步了解一下PHP多进程及简单demo

    php是一门单进程弱类型的语言,PHP处理多并发主要是依赖服务器或PHP-FPM的多进程及它们进程的复用,多进程的作用优点大家可以去网上了解,PHP实现多进程在实际项目中意义也是不容小觑的.比如:日常 ...

  3. Android学习小Demo(19)利用Loader来实时接收短信

    之前写过一篇文章<Android学习小Demo(13)Android中关于ContentObserver的使用>,在里面利用ContentOberver去监測短信URI内容的变化.我们先来 ...

  4. Android组件化demo实现以及遇坑分享

    首先贴出demo的github地址:GitHub - TenzLiu/TenzModuleDemo: android组件化demo 作者:TenzLiu原文链接:https://www.jianshu ...

  5. 【Android】打电话Demo及Android6.0的运行时权限

    新手开局,查看一些旧资料,从打电话.发短信的小应用开始.代码很简单,主要是学习了: 用StartActivity()激活一个Activity组件.这里是激活了系统原生的打电话和发短信Activity. ...

  6. 设计模式之单例模式的简单demo

    /* * 设计模式之单例模式的简单demo */ class Single { /* * 创建一个本类对象. * 和get/set方法思想一样,类不能直接调用对象 * 所以用private限制权限 * ...

  7. Spring的简单demo

    ---------------------------------------- 开发一个Spring的简单Demo,具体的步骤如下: 1.构造一个maven项目 2.在maven项目的pom.xml ...

  8. TensorFlow 在android上的Demo(1)

    转载时请注明出处: 修雨轩陈 系统环境说明: ------------------------------------ 操作系统 : ubunt 14.03 _ x86_64 操作系统 内存: 8GB ...

  9. 使用Spring缓存的简单Demo

    使用Spring缓存的简单Demo 1. 首先创建Maven工程,在Pom中配置 <dependency> <groupId>org.springframework</g ...

随机推荐

  1. Maven项目中如何添加日志

  2. Android 框架修炼-自己开发高效异步图片加载框架

    一.概述 目前为止,第三方的图片加载框架挺多的,比如UIL , Volley Imageloader等等.但是最好能知道实现原理,所以下面就来看看设计并开发一个加载网络.本地的图片框架. 总所周知,图 ...

  3. SpringMVC框架

    一.SpringMVC工作流程图 DispatcherServlet:Spring提供的前端控制器,所有的请求都有经过它来统一分发.在DispatcherServlet将请求分发给Spring Con ...

  4. jQuery+php实现ajax文件即时上传

    很多项目中需要用到即时上传功能,比如,选择本地图片后,立即上传并显示图像.本文结合实例讲解如何使用jQuery和PHP实现Ajax即时上传文件的功能,用户只需选择本地图片确定后即实现上传,并显示上传进 ...

  5. 【转】BUG敏感度的培养

    在我们刚踏入软件测试行业时,不管你是专业的.非专业的,培训出来的还是未培训的.刚进公司时你看着身边的同时报的Bug很多并且大都是严重程度高,自己也很想提高一下,想要提高自己的bug敏感度,建议从下面几 ...

  6. Android之调试打印

  7. (转)(contant的一些用法)

    主要就是增加约束的 以下几种约束 .并 一一列举: 1.主键约束:要对一个列加主键约束的话,这列就必须要满足的条件就是分空因为主键约束:就是对一个列进行了约束,约束为(非空.不重复)以下是代码  要对 ...

  8. Activiti 工作流会签开发设计思路

    http://man1900.iteye.com/blog/1607753 在流程业务管理中,任务是通常都是由一个人去处理的,而多个人同时处理一个任务,这种任务我们称之为会签任务.这种业务需求也很常见 ...

  9. Vimtutor练习心得

    A. 光标定位(482) ctr + g          显示光标当前所在的行数 shift + g(G)    光标移动到文档末尾 gg                移动到文档首行 数字 + G ...

  10. MySql 5.7密码查看或修改

    一.启动命令行,输入: taskkill /f /im mysqld.exe //关闭mysql 二.转入mysql的bin目录下 三.输入:mysqld --skip-grant-tables // ...