今天是Android学习的第二天,主要介绍了画板中一些简单功能的实现
基本功能:选择颜色、简单画图。
基本布局界面:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <com.example.picture.paintview android:id="@+id/paintview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_marginBottom="45dp" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:text="颜色选择" /> <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" /> </LinearLayout> </RelativeLayout>
颜色列表下拉框的java代码如下:(代码源自网络,存在bug,尚在调试中,后面的监听还没有加进去)
public class MainActivity extends Activity { private Spinner spinner; private List<String> data_list; private ArrayAdapter<String> arr_adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.spinner); spinner = (Spinner) findViewById(R.id.spinner); //数据 data_list = new ArrayList<String>(); data_list.add("Red"); data_list.add("Blue"); data_list.add("Yellow"); data_list.add("Black"); //适配器 arr_adapter= new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, data_list); //设置样式 arr_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //加载适配器 spinner.setAdapter(arr_adapter); } }画布绘制图形java代码
public class paintview extends View{ public paintview(Context context, AttributeSet attrs) { super(context, attrs); super.setBackgroundColor(Color.WHITE); //背景色 super.setOnTouchListener(new Touch()); //匿名类。Touch事件的监听 // TODO Auto-generated constructor stub } private List<Point> pointall=new ArrayList<Point>(); private class Touch implements OnTouchListener{ @Override public boolean onTouch(View v, MotionEvent e) { // TODO Auto-generated method stub Point p=new Point((int)e.getX(),(int)e.getY()); //分三种动作将点存入队列中 if(e.getAction()==e.ACTION_DOWN){ //当按下 pointall=new ArrayList<Point>(); pointall.add(p); } else if(e.getAction()==e.ACTION_UP){//当抬起 pointall.add(p); paintview.this.postInvalidate(); //重绘 } else if(e.getAction()==e.ACTION_MOVE){ pointall.add(p); //移动时候 paintview.this.postInvalidate(); //重绘 } return true; } } protected void onDraw(Canvas canvas){ Paint p=new Paint(); //定义画笔 p.setColor(Color.RED); //定义颜色 if(pointall.size()>1){ Iterator<Point> iter=pointall.iterator();// 现在有坐标点保存的时候可以开始进行绘图 Point first=null; Point last=null; while(iter.hasNext()){ if(first==null){ first=(Point)iter.next(); } else{ if(last!=null){ first=last; //将下一个坐标点赋给上面的 } last=(Point)iter.next(); //不停下指 canvas.drawLine(first.x, first.y, last.x, last.y,p); } } } } }
MainActivity中的下拉列表代码还没有完成,目前只能实现绘制功能,没有颜色和笔刷尺寸的选择。
课堂笔记草稿:
adroid graphics包下
颜色选择框
radio button单选框
spinner下拉列表框学姐的android初步2中有讲
下拉列表的内容:xml文件;同时还应该在MainActivity.java加入下拉列表的监听:
当用户选中下拉列表中的某个选项之后可以使用Spinner类中提供的setOnItemClickListener()方法进行监听
字体填充:新建xml(values里面放配置、文字、样式表layout中放样式布局)
android entries
监听方法百度-->改变画笔颜色
画笔是一个触摸事件(onTouch)
color
paint画笔
canvas画布对象
paintview extends view(继承) 外部类
implemrnts接口
MotionEvent动作事件
将点放入一个队列,将移动的点添加进队列
画图:添加画笔、定义颜色、
p.setColor(Color.RED)获取到的是一个类,怎样反应为红色字符串数组
eclipse 画笔paint设置颜色
得到所有的点,开始绘图(两个点)
iterator迭代器:保存的点赋给迭代器(记录初始点和末点连接),last!==null时将下一个点赋给first,first=last //这个功能不仅限于android
imageview图片的监听事件:获取到图片的tag(tag是否可以写为中文)Color.RED,
配置组件:
所有控件都继承view,
加载方式 包名+java类名
画笔粗细的配置对话框 android入门11
首先设置想要放置的内容;setItems(reason中放置退款原因)
监听器是一个点击事件
scrollview主布局 可以滚动的控件都可以放进去
button添加到布局中(首先通过id找到页面布局;设置n个布局,layout.addview for循环进行添加)
listview 适配器
音乐内容(imagaedio):线程 R.文件夹.文件名
图形绘制
相关推荐
《Android入门学习资料详解》 Android作为全球最受欢迎的智能手机操作系统之一,吸引着众多开发者投入其怀抱。本套学习资料旨在帮助初学者快速掌握Android开发的基本技能,内容涵盖Android开发中文文档以及一系列由...
android入门学习.ppt,对于新手学习android入门有很大的帮助
android 初学者 学习资料 android 初学者 学习资料 android 初学者 学习资料 android 初学者 学习资料 android 初学者 学习资料 android 初学者 学习资料
在Android入门学习中,贪吃蛇小游戏是一个经典的实践项目,它可以帮助初学者理解Android应用的基本架构、用户界面设计以及事件处理等核心概念。本框架旨在为Android新手提供一个清晰的学习路径,通过实现贪吃蛇游戏...
传智播客 黎活明 android入门学习资料 课件
《Android入门到精通》这本书是为想要学习和掌握Android应用开发的初学者量身打造的指南。Android作为全球最流行的移动操作系统,拥有庞大的用户群体,为开发者提供了广阔的应用市场和无限的创新空间。本书旨在帮助...
在Android开发领域,入门学习是每位开发者必经的阶段。本示例集合是为初学者设计的,旨在帮助理解并掌握Android应用开发的基础知识。通过重写一系列代码,你将有机会深入了解并实践如何使用Android的一些核心组件,...
Android入门学习笔记主要涵盖了Android开发的基础知识,包括平台概述、环境搭建、基本概念以及实际应用开发的各个方面。这里我们将深入探讨这些关键知识点。 一、Android平台概述 Android是由Google主导开发的一款...
通过这个完整的Android入门Demo,开发者不仅可以学习到基础控件的使用,还能理解服务和广播的机制,掌握Android应用开发的核心概念。实践中不断练习,将有助于提升Android编程技能,为成为专业开发者奠定坚实基础。
这份"android入门学习源码"集合了多方面的基础知识,包括ListView、SQLite数据库、Socket通信、MP3处理、WiFi管理以及Handler事件处理,这些都是Android开发中的核心模块。下面我们将逐一探讨这些知识点。 1. **...
"Android入门快速入门第一天"这个主题旨在帮助新接触Android开发的朋友们迅速建立起对这个平台的理解和实践能力。在这个阶段,我们将涵盖以下几个核心知识点: 1. **Android系统概述**:Android是由Google主导的...
这个“Android入门demo源码”是专为初学者设计的学习资源,旨在通过实际操作来帮助理解Android开发的基本概念和流程。下面将详细解析这个Demo中涉及的关键知识点。 1. **Eclipse集成开发环境**: 本项目使用Eclipse...
这篇学习笔记将引导新手入门,通过创建第一个简单的案例来了解Android Studio的基本操作。 首先,让我们了解一下Android Studio的核心功能。它基于IntelliJ IDEA,具备代码自动补全、重构、调试等强大的开发特性。...
这份名为“Android入门到精通详解 (带目录)”的资料全面涵盖了Android开发的基础到高级技术,旨在帮助初学者逐步建立起扎实的技术体系。 首先,从入门阶段开始,你将学习到Android开发环境的搭建,包括安装Java ...
首先,Android入门学习框架是指一套基础的开发流程和技术栈,包括但不限于环境配置、基本组件的理解、布局设计、活动(Activity)管理、数据存储、网络通信等。在"打豆豆小游戏"的开发中,你需要掌握以下几个核心部分...
总之,"Android入门PPT大全"提供了一条清晰的学习路径,覆盖了从基础概念到实际开发的各个方面。通过这套教程,初学者可以系统地学习Android开发,逐步建立起自己的知识体系,并具备开发简单Android应用的能力。在...
2. **基本概念**:理解Android应用程序的基本结构,包括活动(Activity)、服务(Service)、广播接收者(Broadcast Receiver)和内容提供者(Content Provider)。活动是用户界面的入口,服务则在后台运行,不与...
教程名称:Android 4.0开发入门经典学习文档合集课程目录:【】Android4开发入门经典 ? 第七部分(1):数据存储【】Android4开发入门经典 ? 第七部分(2):数据存储【】Android4开发入门经典 ? 第三部分【】...