在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Android平台开发 → android 骑行助手app源码(记录骑行轨迹)

android 骑行助手app源码(记录骑行轨迹)

Android平台开发

下载此实例
  • 开发语言:Java
  • 实例大小:12.91M
  • 下载次数:51
  • 浏览次数:804
  • 发布时间:2018-04-03
  • 实例类别:Android平台开发
  • 发 布 人:KKKJK
  • 文件格式:.zip
  • 所需积分:3
 相关标签: 二维码 轨迹 地图

实例介绍

【实例简介】实现了 注册/登陆 以及 记录自己的骑行轨迹,android 4.4 系统测试,有乱码现象,基本功能已实现,具体如下图

【实例截图】


from clipboard


from clipboard


from clipboard

【核心代码】


package com.gh.admin;

import com.example.bike.MainActivity;
import com.example.bike.R;
import com.gh.adapter.BikeAdapter;
import com.gh.core.BaseActivity;
import com.gh.map.RideMap;
import com.gh.service.DatabaseHelper;
import com.gh.userdao.Brand;
import android.os.Bundle;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;

public class BikeKnow extends BaseActivity implements OnClickListener,OnItemClickListener,OnItemLongClickListener {
	private Button newbrand,selectbrand,knowback;//新建品牌 查找品牌
	private ListView brandlist;//品牌列表
	
	private DatabaseHelper helper;//创建、管理数据库
	private BikeAdapter adapter;//适配器
	
	public static String userOrAdmin;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_knowledge);
		
		allActivity.add(this);//管理所有Activity 退出时关闭所有Activity
		initViews();
		helper = new DatabaseHelper(this);
		showListView();
	}
	/*
	 * 初始化组件
	 */
	private void initViews() {
		newbrand = (Button) findViewById(R.id.newbrand);
		newbrand.setOnClickListener(this);
		selectbrand = (Button) findViewById(R.id.selectbrand);
		selectbrand.setOnClickListener(this);
		knowback = (Button) findViewById(R.id.knowback);
		knowback.setOnClickListener(this);
		brandlist = (ListView) findViewById(R.id.brandlist);
		brandlist.setOnItemClickListener(this);
		brandlist = (ListView) findViewById(R.id.brandlist);
		brandlist.setOnItemLongClickListener(this);
		if(!userOrAdmin.equals("admin")){
			newbrand.setEnabled(false);
		}
		
	}
	
	/*
	 * 点击事件监听方法 
	 */
	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.newbrand:
			Intent intent = new Intent(BikeKnow.this,NewBrand.class);
			NewBrand.userOrAdminNew = userOrAdmin;
			intent.setFlags(MyConfig.REQUEST_CODE_NEW_BRAND);//请求
			startActivityForResult(intent, MyConfig.REQUEST_CODE_NEW_BRAND);
			break;
		
		case R.id.selectbrand:
			showDialog();
			break;
		case R.id.knowback:
			if(!userOrAdmin.equals("admin")){
				Intent intentback = new Intent(BikeKnow.this,RideMap.class);
				startActivity(intentback);
				finish();
			}else{
			Intent intentback1 = new Intent(BikeKnow.this,MainActivity.class);
			startActivity(intentback1);
			finish();
			}
			
		}
	}

	public void showDialog(){
		AlertDialog.Builder custom = new AlertDialog.Builder(this);
		
		custom.setTitle("请输入要查找的内容:");
		custom.setIcon(android.R.drawable.ic_menu_search);
		// 加载自定义的布局
		View view = LayoutInflater.from(this).inflate(R.layout.custom, null);//自定义文本输入框
		custom.setView(view);
		// 获得自定义布局上的控件
		final EditText select = (EditText) view.findViewById(R.id.select);//空指针异常
		
		custom.setPositiveButton("确定",new DialogInterface.OnClickListener() {
					@Override
					public void onClick(DialogInterface dialog, int which) {
						adapter.resetBrandsquery(select.getText().toString());
						
					}
				});
		custom.setNegativeButton("取消", null);
		// 给对话框设置view
		custom.create().show();
		
	}
	private void showListView() {
		adapter = new BikeAdapter(this);
		brandlist.setAdapter(adapter);     //调用方法实现ListView
	}
	//2015-6-6
	@Override
	public void onItemClick(AdapterView<?> parent, View view, int position,
			long id) {
		Brand brand = (Brand) parent.getAdapter().getItem(position);
		Intent intent = new Intent(this,NewBrand.class);
		NewBrand.userOrAdminNew = userOrAdmin;
		intent.setFlags(MyConfig.REQUEST_CODE_SEE_BRAND);//查看品牌
		intent.putExtra("brand", brand);	//键,值
		startActivityForResult(intent, MyConfig.REQUEST_CODE_SEE_BRAND);   //有返回值的启动activity
	}
	
	@Override
	public boolean onItemLongClick(AdapterView<?> parent, View view,
		int position, long id) {
		
		if(userOrAdmin.equals("admin")){
			Brand brand= (Brand) parent.getAdapter().getItem(position);
			showDeleteDialog(brand.getId());
			adapter.update();
		}else if(userOrAdmin.equals("admin")){
			showUserDialog();
		}
		return false;	//true会调用onItemClick
		
	}
	private void showUserDialog(){
		AlertDialog.Builder dialog = new AlertDialog.Builder(this);
		dialog.setTitle("提示");
		dialog.setMessage("用户不能操作!");
		dialog.setPositiveButton("确定", new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface dialog, int which) {
			}
		});
		dialog.setNegativeButton("返回", null);
		dialog.show();
	}
	private void showDeleteDialog(final int id) {
		AlertDialog.Builder dialog = new AlertDialog.Builder(this);
		dialog.setTitle("删除提示");
		dialog.setMessage("确定要删除该条笔记?");
		dialog.setPositiveButton("删除", new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface dialog, int which) {
				helper.deleteBrandById(id);
				adapter.resetNotes();
				showListView();
			}
		});
		dialog.setNegativeButton("取消", null);
		dialog.show();
	}
	
	//返回结果
	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		super.onActivityResult(requestCode, resultCode, data);
		adapter.resetNotes();
	}

	@Override
	protected void onDestroy() {
		super.onDestroy();
	}
	

}


标签: 二维码 轨迹 地图

实例下载地址

android 骑行助手app源码(记录骑行轨迹)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警