设为首页 收藏本站
查看: 1497|回复: 0

[经验分享] android中炫酷划屏事件及sqlite全部操作Demo(1)

[复制链接]

尚未签到

发表于 2016-12-1 12:02:03 | 显示全部楼层 |阅读模式
  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;
}
}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-308231-1-1.html 上篇帖子: 如何在DOS窗口正确显示UTF-8字符,解决SQLite中文乱码问题 下篇帖子: 开发基于php+sqlite群的支持千万级文章数量的cms系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表