- 浏览: 1101209 次
- 性别:
- 来自: 郑州
-
文章分类
最新评论
-
baiyi168:
非常有用,多谢楼主
Android中的一个TextView中的字体设置不同大小 -
qq271629261:
[img] ...
android开发工具 Eclipse+Android SDK+ADT -
txlong_onz:
haotainan 写道Activity伪造Dialog,这个 ...
Activity伪造Dialog的时候不能全屏显示 -
haotainan:
Activity伪造Dialog,这个Dialog显示的时候界 ...
Activity伪造Dialog的时候不能全屏显示 -
gangbener:
cainingyouyou 写道7楼的,tag,怎么解决的啊1 ...
android中ListView点击和里边按钮或ImageView点击不能同时生效问题解决
1、首先设计main.xml文件
<?xml version="1.0" encoding="utf-8"?> <ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/myFilpper" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/red"> <TextView android:id="@+id/tv1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textColor="@drawable/black" android:textSize="30dip"/> <Spinner android:id="@+id/sp1" android:entries="@array/citys" android:layout_gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ImageView android:id="@+id/im1" android:src="@drawable/icon" android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/green"> <TextView android:id="@+id/tv2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textColor="@drawable/black" android:textSize="30dip"/> <Spinner android:id="@+id/sp2" android:entries="@array/citys" android:layout_gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ImageView android:id="@+id/im2" android:src="@drawable/icon" android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/blue"> <TextView android:id="@+id/tv3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textColor="@drawable/black" android:textSize="30dip"/> <Spinner android:id="@+id/sp3" android:entries="@array/citys" android:layout_gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ImageView android:id="@+id/im3" android:src="@drawable/icon" android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> </ViewFlipper>
2、编写界面切换是的效果(xml)
2.1、push_left_in.xml和push_left_out.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="500" /> <alpha android:fromAlpha="0.1" android:toAlpha="1.0" android:duration="500" /> </set> <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="500" /> <alpha android:fromAlpha="1.0" android:toAlpha="0.1" android:duration="500" /> </set>
2.2、push_right_in.xml和push_right_out.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="-100%p" android:toXDelta="0" android:duration="500" /> <alpha android:fromAlpha="0.1" android:toAlpha="1.0" android:duration="500" /> </set> <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0" android:toXDelta="100%p" android:duration="500" /> <alpha android:fromAlpha="1.0" android:toAlpha="0.1" android:duration="500" /> </set>
3、编写activity实现OnGestureListener接口
package com.jftt; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.GestureDetector; import android.view.GestureDetector.OnGestureListener; import android.view.MotionEvent; import android.view.View; import android.view.animation.AnimationUtils; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.Spinner; import android.widget.TextView; import android.widget.ViewFlipper; import com.jftt.pojo.City; import com.jftt.pojo.City_Web; import com.jftt.pojo.WebSite; import com.jftt.service.DBManager; public class FlipperDemo extends Activity implements OnGestureListener { private ViewFlipper flipper; private GestureDetector detector; private TextView tv1, tv2, tv3; private Spinner sp1, sp2, sp3; private ImageView im1, im2, im3; private ArrayAdapter<String> adapter; private List<String> citys1, citys2, citys3; private DBManager dbManager; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); dbManager = new DBManager(this); addData(); tv1 = (TextView) findViewById(R.id.tv1); tv2 = (TextView) findViewById(R.id.tv2); tv3 = (TextView) findViewById(R.id.tv3); sp1 = (Spinner) findViewById(R.id.sp1); sp2 = (Spinner) findViewById(R.id.sp2); sp3 = (Spinner) findViewById(R.id.sp3); im1 = (ImageView) findViewById(R.id.im1); im2 = (ImageView) findViewById(R.id.im2); im3 = (ImageView) findViewById(R.id.im3); detector = new GestureDetector(this); flipper = (ViewFlipper) findViewById(R.id.myFilpper); tv1.setText("拉手"); tv2.setText("淘宝"); tv3.setText("阿里巴巴"); citys1 = dbManager.findCitiesByIDs(dbManager.findCityIdByWebID(1)); Log.e("myTag", dbManager.findCityIdByWebID(1).toString()); Log.e("myTag", dbManager.findCitiesByIDs(dbManager.findCityIdByWebID(1)).toString()); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, citys1); // 设置下拉样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // 为下拉列表设置适配器 sp1.setAdapter(adapter); // 定义子元素选择监听器 // 为下拉列表绑定事件监听器 sp1.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { im1.setImageResource(getIcon(dbManager .findCityPicByCityName(sp1.getSelectedItem().toString()))); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); citys2 = dbManager.findCitiesByIDs(dbManager.findCityIdByWebID(2)); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, citys2); // 设置下拉样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // 为下拉列表设置适配器 sp2.setAdapter(adapter); // 定义子元素选择监听器 // 为下拉列表绑定事件监听器 sp2.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { im2.setImageResource(getIcon(dbManager .findCityPicByCityName(sp2.getSelectedItem().toString()))); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); citys3 = dbManager.findCitiesByIDs(dbManager.findCityIdByWebID(3)); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, citys3); // 设置下拉样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // 为下拉列表设置适配器 sp3.setAdapter(adapter); // 定义子元素选择监听器 // 为下拉列表绑定事件监听器 sp3.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { im3.setImageResource(getIcon(dbManager .findCityPicByCityName(sp3.getSelectedItem().toString()))); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); } private int getIcon(String cityName) { if (cityName.equals("suzhou")) { return R.drawable.suzhou; } if (cityName.equals("beijing")) { return R.drawable.beijing; } if (cityName.equals("zhengzhou")) { return R.drawable.zhengzhou; } if (cityName.equals("guangzhou")) { return R.drawable.guangzhou; } if (cityName.equals("shenzhen")) { return R.drawable.shenzhen; } if (cityName.equals("chengdu")) { return R.drawable.chengdu; } if (cityName.equals("dalian")) { return R.drawable.dalian; } if (cityName.equals("shanghai")) { return R.drawable.shanghai; } if (cityName.equals("wuhan")) { return R.drawable.wuhan; } return 0; } private void addData() { if (dbManager.getCwCount() == 0) {City_Web[] cityWebs = new City_Web[] { new City_Web(1, 1), new City_Web(3, 1), new City_Web(5, 1), new City_Web(7, 1), new City_Web(2, 2), new City_Web(4, 2), new City_Web(6, 2), new City_Web(8, 2), new City_Web(1, 3), new City_Web(3, 3), new City_Web(5, 3), new City_Web(7, 3), new City_Web(9, 3) }; dbManager.insertCws(cityWebs); } if (dbManager.getCityCount() == 0) {City[] cities = new City[] { new City("苏州", "suzhou"), new City("北京", "beijing"), new City("郑州", "zhengzhou"), new City("广州", "guangzhou"), new City("深圳", "shenzhen"), new City("成都", "chengdu"), new City("大连", "dalian"), new City("上海", "shanghai"), new City("武汉", "wuhan"), }; dbManager.insertCities(cities); } if (dbManager.getWebCount() == 0) {WebSite[] webSites = new WebSite[] { new WebSite("拉手", "http://www.lashou.com"), new WebSite("淘宝", "http://www.taobao.com"), new WebSite("阿里巴巴", "http://www.alibaba.com") }; dbManager.insertWebSite(webSites); } } @Override public boolean onTouchEvent(MotionEvent event) { return detector.onTouchEvent(event); } @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { if (e1.getX() - e2.getX() > 120) { this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in)); this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_out)); this.flipper.showNext(); return true; } else if (e1.getX() - e2.getX() < -120) { this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_in)); this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_out)); this.flipper.showPrevious(); return true; } return false; } @Override public boolean onDown(MotionEvent e) { return false; } @Override public void onLongPress(MotionEvent e) { } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { return false; } @Override public void onShowPress(MotionEvent e) { } @Override public boolean onSingleTapUp(MotionEvent e) { return false; } }
发表评论
-
安卓自动编译工具Gradle
2015-09-02 15:15 1139https://developer.android.com ... -
图片的水平平铺效果
2014-03-10 15:45 2453Android要实现图片的水平平铺效果: 很简单也很强大, ... -
LinearLayout中的属性baselineAligned的使用
2013-10-19 18:54 34429Android线性布局中的属性主要的就是控制浮动方向的or ... -
Activity伪造Dialog的时候不能全屏显示
2013-05-31 08:42 14287使用Activity伪造Dialog的时候出现不能全屏的问 ... -
修改局部源码烧录手顺
2012-08-16 09:23 21531. 添加命令到PATH路径下,方便全局使用: andro ... -
备份我的源码烧录的sh文件
2012-07-16 10:39 1392烧录编译的img文件: 01.tofastboot.sh ... -
备份我的源码编译的sh文件
2012-07-16 10:34 1620编译命令写一次就可以了。以后直接使用。 01-extra_s ... -
ADT20安装报错
2012-06-29 23:44 9256Cannot complete the install bec ... -
ubuntu12.04(VirtualBox) 64-bit build android source
2012-05-20 17:33 30591.download VirtalBox(Virtual ... -
搭建android源码编译开发服务器
2012-05-20 17:32 73651.android服务器,其实也就是台式机器的增强版本。基本上 ... -
ADT离线安装报错
2012-04-23 09:37 3408最近使用ADT的离线zip包安装ADT总是报错。说是 Can ... -
Android源码编译中的Makefile文件
2012-04-18 09:09 25821.和大多shell文件一样,makefile中的#表示注释, ... -
遍历android根目录的简单资源查看器
2012-04-16 17:02 3790效果如图: package com.txl.sua; ... -
Nexus s与android4.0
2011-12-14 13:15 14601.内核源码链接 http://android.git.ke ... -
Android编译生成系统-译文
2011-12-08 11:21 3551生成 4.0.1 系统 下边 ... -
Android中设置TextView的颜色setTextColor
2011-11-10 11:34 182395android中设置TextView的颜色有方法setTex ... -
Android中设置activity的background为Wallpaper
2011-08-15 08:34 3928<activity android:name=&q ... -
android程序中怎么实现平铺效果
2011-08-10 17:06 4951很简单,就像window桌面图片一样,如果图片小的话就会平铺。 ... -
一个android应用向Home screen添加多个Widget
2011-08-09 15:12 5137如Twitter客户端或者HTC的日历应用,可以添加大小不 ... -
怎么实现Widget中的动画效果,如渐入等
2011-08-09 11:22 3120怎么在Widget中添加animation,如渐入渐出,淡入淡 ...
相关推荐
综上所述,"android中炫酷划屏事件及sqlite全部操作Demo(2)"涵盖了Android开发中两个重要主题:划屏事件处理和SQLite数据库操作。通过理解并掌握这些知识点,开发者能够创建更互动且功能丰富的Android应用。在提供的...
在这个"Android SQLite数据库操作Demo"中,我们将探讨如何在Android应用中创建、查询、更新和删除SQLite数据库的数据。 1. **数据库初始化** 在Android中,我们通常通过扩展SQLiteOpenHelper类来初始化SQLite...
在这个"android Sqlite数据库操作demo"中,我们可以深入理解如何在Android应用中进行SQLite的增删改查操作。 首先,我们需要在Android项目中创建一个SQLite数据库。这通常通过继承SQLiteOpenHelper类来实现。...
本篇将基于一个名为"Android SQLite数据库操作demo"的示例项目,探讨如何在Android中进行SQLite数据库的相关操作。原作者的博客地址为http://blog.csdn.net/liuhe688/article/details/6715983。 首先,我们来看一下...
本`android sqlite操作 demo`提供了关于如何在Android应用中使用SQLite进行数据操作的示例。 SQLite在Android中的使用通常包括以下几个步骤: 1. **创建数据库**: 首先,我们需要创建一个SQLite数据库。这通常是...
在Demo中,可能使用了`AsyncTask`来封装数据库操作。 6. **Android Studio集成**: 使用Android Studio可以方便地管理SQLite数据库。可以借助SQLite Database Browser插件查看和编辑数据库内容,或者使用Android ...
在实际开发中,我们还需要考虑线程安全、事务处理、错误处理等更复杂的情况,但这些基本操作是理解SQLite在Android应用中的运用的基础。通过实践和学习,开发者可以熟练掌握SQLite的使用,为应用提供高效、可靠的...
本文将详细讲解如何在Android项目中进行SQLite数据库的升级,结合提供的"android sqlite的升级demo"来深入理解这一过程。 首先,我们需要明白SQLite数据库的版本管理。在Android中,每个SQLite数据库都有一个关联的...
本教程将详细讲解如何在Android环境中进行SQLite数据库的操作,包括创建数据库、创建表、插入数据、查询数据以及更新和删除数据。 首先,创建SQLite数据库在Android中通常是在`SQLiteOpenHelper`的子类中完成的。`...
本篇将基于提供的"android存取Sqlite3数据库demo"进行详细的解析,帮助你快速掌握如何在Android应用中操作SQLite3数据库。 首先,我们来看看SQLite在Android中的基本使用步骤: 1. **创建数据库**: 在Android中...
这个"SQLite数据库操作demo"旨在提供一个基础的示例,帮助初学者了解如何在Android环境中进行SQLite数据库的创建、查询、更新和删除等基本操作。 首先,Android中的SQLite数据库操作通常涉及以下步骤: 1. **创建...
SQlite开发的完整demo,功能有: 1,建了一个表,结构是id+姓名 2,可以删除 增加 更新记录 3,解决了Android的SQlite先天不足:删除 插入后主键不能自动排序的问题 4,在数据库主界面,有“选定”按钮,点此后切换...
在"android sqlite数据库 demo code"中,我们可以看到一个简单的Android应用示例,该示例演示了如何使用SQLite数据库进行数据的增删改查操作。下面将详细介绍这些关键知识点: 1. **SQLiteOpenHelper**: 这是...
在本示例"android基本SQLite数据库操作的增删改查demo"中,开发者创建了一个用于管理停车位查询的应用,其中涉及到了对SQLite数据库的基础操作:增加数据(Add)、查询数据(Query)、删除数据(Delete)以及修改...
这个"android sqlite3 demo"是一个完整的示例项目,旨在帮助初学者理解如何在Android应用中有效地使用SQLite3进行数据的增删改查操作。 首先,我们来了解一下SQLite3在Android中的基本用法。在Android应用中,...
总结来说,"Android Sqlite demo"展示了如何在Android应用中使用SQLite进行数据库操作,包括创建数据库、定义表、插入、查询、更新和删除数据,以及事务处理等。开发者可以通过这个示例学习到Android环境下SQLite的...
7. **编译与链接**:DEMO中可能包含编译和链接SQLite3库的步骤,如`-lsqlite3`链接选项的使用。 通过研究这个DEMO,开发者可以掌握SQLite3的基本用法,包括数据库的打开和关闭、SQL语句的执行、数据的读写等核心...