(android地图开发) 高德地图手势切换

2023-11-04

效果截图:

相关布局文件:

(手势滑动第一个界面)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
     android:background="#ffffff"
    >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="42dp"
        android:background="#ffffff"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="6dp"
            android:background="@drawable/ml_card_bg"
            android:src="@drawable/back_btn" >
        </ImageView>

        <LinearLayout
            android:layout_width="210dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/sapi_input"
            android:orientation="horizontal" >

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="5dp"
                android:background="@drawable/change" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_margin="2dp"
                android:hint="地点、地铁、公交..."
                android:textColor="@color/grey"
                android:textSize="16dp" >
            </TextView>
        </LinearLayout>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/header_voice_normal" >
        </Button>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="16dp"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_cur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"       
        android:layout_marginTop="6dp"
        android:orientation="vertical" >

        <ListView
            android:id="@+id/list_search_me"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
        </ListView>
    </LinearLayout>

</LinearLayout>


(手势滑动第二个界面)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
     android:background="#ffffff"
     >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="42dp"
        android:background="#ffffff"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="6dp"
            android:background="@drawable/ml_card_bg"
            android:src="@drawable/back_btn" >
        </ImageView>

        <LinearLayout
            android:layout_width="210dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/sapi_input"
            android:orientation="horizontal" >

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="5dp"
                android:background="@drawable/change" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_margin="2dp"
                android:hint="地点、地铁、公交..."
                android:textColor="@color/grey"
                android:textSize="16dp" >
            </TextView>
        </LinearLayout>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/header_voice_normal" >
        </Button>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="16dp"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_cur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginTop="6dp"       
        android:orientation="vertical"        
        >

        <GridView
            android:id="@+id/grid_search_launcher"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:horizontalSpacing="8dp"
            android:numColumns="5"
            android:verticalSpacing="6dp" >
        </GridView>
    </LinearLayout>

</LinearLayout>


(手势滑动第三个界面)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="42dp"
        android:background="#ffffff"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="6dp"
            android:background="@drawable/ml_card_bg"
            android:src="@drawable/back_btn" >
        </ImageView>

        <LinearLayout
            android:layout_width="210dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/sapi_input"
            android:orientation="horizontal" >

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="5dp"
                android:background="@drawable/change" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_margin="2dp"
                android:hint="地点、地铁、公交..."
                android:textColor="@color/grey"
                android:textSize="16dp" >
            </TextView>
        </LinearLayout>


       <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="6dp"
            android:layout_marginTop="6dp"
            android:background="@drawable/header_voice_normal" >
        </Button>
    </LinearLayout>
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="16dp"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_notcur" >
        </ImageView>

        <View
            android:layout_width="16dp"
            android:layout_height="wrap_content" >
        </View>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/icon_scrollview_cur" >
        </ImageView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginTop="6dp"      
        android:orientation="vertical" >

        <GridView
            android:id="@+id/grid_search_life"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:horizontalSpacing="8dp"
            android:numColumns="5"
            android:verticalSpacing="6dp" >
        </GridView>
    </LinearLayout>

</LinearLayout>


源代码:

(滑动第一个页面)

package com.rf.mapabc;



import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.GestureDetector.OnGestureListener;

public class SearchActivity extends Activity implements OnGestureListener {
	// 手势检测器
	GestureDetector detector;
	@Override
	public void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		// 全屏
		requestWindowFeature(Window.FEATURE_NO_TITLE);

		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
				WindowManager.LayoutParams.FLAG_FULLSCREEN);

		setContentView(R.layout.search);
		detector = new GestureDetector(this);
		//ListView 数据实例化方法在此编写
	}
	
	//相关的覆写方法	
	@Override
	public boolean onDown(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {
		// TODO Auto-generated method stub
		if (e1.getX() - e2.getX() > 50) {
			// 相关页面的滑动
			Intent intent = new Intent(SearchActivity.this, Search_middleActivity.class);
			startActivity(intent);
			
			return true;
		}
		return true;
		
	}
	@Override
	public void onLongPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
			float distanceY) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public void onShowPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onSingleTapUp(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	//添加事件处理函数		

	@Override
	public boolean onTouchEvent(MotionEvent event) {
		// TODO Auto-generated method stub
		return this.detector.onTouchEvent(event);
	}
	
	

}


(滑动第二个页面)

package com.rf.mapabc;

import com.rf.adapter.ImageAdapter;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.GestureDetector.OnGestureListener;
import android.widget.GridView;
import android.widget.SlidingDrawer;

public class Search_middleActivity extends Activity implements OnGestureListener {
	// 手势检测器
    GestureDetector detector;

    
	@Override
	public void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		//全屏代码
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
				WindowManager.LayoutParams.FLAG_FULLSCREEN);
		setContentView(R.layout.search_middle);
		// 手势监听实例化代码
				detector = new GestureDetector(this);
			  //组件类
				final GridView gridview=(GridView) findViewById(R.id.grid_search_launcher);
				//相关资源组件
				 int[] images=new int[]{
							R.drawable.pg1,
							R.drawable.pg2,
							R.drawable.pg3,
							R.drawable.pg4,
							R.drawable.pg5,
							R.drawable.pg6,
							R.drawable.pg7,
							R.drawable.pg8,
							R.drawable.pg9,
							R.drawable.pg10
					};
				 String[] contents=new String[]{
						 "团购","美食","酒店","公交站","银行","电影院","KTV","丽人","超市","景点"
						 
				 };
				 //自定义适配器			
					final ImageAdapter adapter=new ImageAdapter(this,images,contents);
					gridview.setAdapter(adapter);
				
	}
	//覆写相关方法
	@Override
	public boolean onDown(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {
		// TODO Auto-generated method stub
		// TODO Auto-generated method stub
				// e1 触摸的起始位置,e2 触摸的结束位置,velocityX X轴每一秒移动的像素速度(大概这个意思) velocityY 就是Y咯
				// 手势左,上为正 ——,右,下为负正
				if (e2.getX() - e1.getX() > 50) {
					// 为什么是50? 这个根据你的模拟器大小来定,看看模拟器宽度,e2.getX()-e1.getX()<屏幕宽度就OK

					// 要触发什么事件都在这里写就OK
					// 如果要跳转到另外一个activity//SecondActivity
					Intent intent = new Intent(Search_middleActivity.this, SearchActivity.class);
					startActivity(intent);						
					return true;
				}
				if (Math.abs(e2.getX() - e1.getX()) > 50) {
					Intent intent = new Intent(Search_middleActivity.this, Search_endActivity.class);
					startActivity(intent);					
					return true;
				}
		return false;
	}
	@Override
	public void onLongPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
			float distanceY) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public void onShowPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onSingleTapUp(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	//事件方法
	@Override
	public boolean onTouchEvent(MotionEvent event) {
		// TODO Auto-generated method stub
		return this.detector.onTouchEvent(event);
	}
	

}


(滑动第三个界面)

package com.rf.mapabc;





import com.rf.adapter.ImageAdapter;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.GestureDetector.OnGestureListener;
import android.widget.GridView;

public class Search_endActivity extends Activity implements OnGestureListener{
	// 手势检测器
    GestureDetector detector;
	@Override
	public void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		//全屏代码
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
				WindowManager.LayoutParams.FLAG_FULLSCREEN);
		setContentView(R.layout.serach_end);
		// 手势监听实例化代码
		detector = new GestureDetector(this);
		//组件类
		final GridView gridview=(GridView) findViewById(R.id.grid_search_life);
		//相关资源组件
		 int[] images=new int[]{
					R.drawable.pg1,
					R.drawable.pg2,
					R.drawable.pg3,
					R.drawable.pg4,
					R.drawable.pg5,
					R.drawable.pg6,
					R.drawable.pg7,
					R.drawable.pg8,
					R.drawable.pg9,
					R.drawable.pg10
			};
		 String[] contents=new String[]{
				 "团购","美食","酒店","公交站","银行","电影院","KTV","丽人","超市","景点"
				 
		 };
		 //自定义适配器			
			final ImageAdapter adapter=new ImageAdapter(this,images,contents);
			gridview.setAdapter(adapter);
	}
	//覆写相关方法
	@Override
	public boolean onDown(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {
		// TODO Auto-generated method stub
		if (e2.getX() - e1.getX() > 50) {
			// 为什么是50? 这个根据你的模拟器大小来定,看看模拟器宽度,e2.getX()-e1.getX()<屏幕宽度就OK

			// 要触发什么事件都在这里写就OK
			// 如果要跳转到另外一个activity//SecondActivity
			Intent intent = new Intent(Search_endActivity.this, Search_middleActivity.class);
			startActivity(intent);			
			return true;
		}
		return true;
	}
	@Override
	public void onLongPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
			float distanceY) {
		// TODO Auto-generated method stub
		return false;
	}
	@Override
	public void onShowPress(MotionEvent e) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public boolean onSingleTapUp(MotionEvent e) {
		// TODO Auto-generated method stub
		return false;
	}
	//事件监听
	
	@Override
	public boolean onTouchEvent(MotionEvent event) {
		// TODO Auto-generated method stub
		return this.detector.onTouchEvent(event);
	}
	

}


 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(android地图开发) 高德地图手势切换 的相关文章

  • linux实验文件管理,操作系统实验七Linux下的文件管理.pdf

    操作系统实验七Linux下的文件管理 操作系统实验七 Linux下的文件管理 一 实验目的 1 熟悉Linux 下常用的操作指令 2 加深对文件 目录 文件系统等概念的理解 3 掌握Linux 文件系统的目录结构 4 掌握有关Linux 文
  • PyTorch 提取中间层特征?

    点击上方 小白学视觉 选择加 星标 或 置顶 重磅干货 第一时间送达 来源 机器学习算法与自然语言处理 编辑 忆臻 https www zhihu com question 68384370 本文仅作为学术分享 如果侵权 会删文处理 PyT
  • TCP/IP详解学习笔记

    TCP IP详解学习笔记 http blog csdn net goodboy1881 category 204448 aspx PageNumber 2 TCP IP详解学习笔记 3 IP协议 ARP协议 RARP协议 摘要 TCP IP
  • C#在linux上运行实现

    1 C 开发完了服务 2 部署到linux centos7上 3无法直接运行 解决方法 1 linux cenos7上安装mono 2 执行mono xxx exe 即可 解决方法2 下载 anyexec 1 2 linux x64 tar
  • C语言 leetcode刷题篇 删除有序数组中的重复项

    给你一个 升序排列 的数组 nums 请你 原地 删除重复出现的元素 使每个元素 只出现一次 返回删除后数组的新长度 元素的 相对顺序 应该保持 一致 由于在某些语言中不能改变数组的长度 所以必须将结果放在数组nums的第一部分 更规范地说
  • 跨域 访问总结

    文章转载自https segmentfault com a 1190000011145364 什么是跨域 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源 这里跨域是广义的 广义的跨域 1 资源跳转 A链接 重定向 表单提交 2 资源
  • Mybatis从头到尾(一)--MyBatis简介及项目搭建

    一 简介 MyBatis的前身是iBATIS 是ClintonBegin在2001年发起的一个开源项目 最初侧重于密码软件的开发 后来发展成为一款基于Java的持久层框架 2004年 Clinton将iBATIS的名字和源码捐赠给了Apac
  • labelme 5.0.1版本指南(二)labelme快捷键详解与修改

    如何自定义labelme的快捷键 非常简单也很实用 吐槽一下Ctrl J创建 Ctrl N编辑 对我的键盘很不友好 路径文件名是这个是这个 home mac labelmerc 打开以后可以看到各种快捷键 shortcuts close C
  • 深度学习06-pytorch从入门到精通

    文章目录 概述 环境准备 安装cuda和cudnn 安装pytorch 基础 张量 定义 numpy转换 数学函数 随机数 计算函数 矩阵处理函数 自动梯度 案例 计算图 torchvision模块 Transforms DataSet D
  • 鲜为人知的编程真相(转载)

    当程序员的经历让我知道了一些关于软件编程的事情 下面的这些事情可能会让朋友们对软件开发感到惊讶 一个程序员用在写程序上的时间大概占他的工作时间的10 20 大部分的程序员每天大约能写出10 12行的能进入最终的产品的代码 不管他的技术水平有
  • 数据量超过亿级别,MySQL大表迁移该如何做?

    MySQL 作为当前应用最广泛的开源关系型数据库之一 具有高性能 稳定性和易用性等特性 是许多网站 应用和商业产品的主要数据存储 在一些场景中 如果出现单表行数上亿的情况 就可能需要开发和 DBA 对大表进行优化 分表 归档或扩容操作 而在
  • std::shared_ptr 和 std::weak_ptr的用法以及引用计数的循环引用问题

    在std shared ptr被引入之前 C 标准库中实现的用于管理资源的智能指针只有std auto ptr一个而已 std auto ptr的作用非常有限 因为它存在被管理资源的所有权转移问题 这导致多个std auto ptr类型的局
  • 一文解决linux下mysql FEDERATED 存储引擎的配置和使用(笔者亲测有效)

    C C 气象数据中心实战工业级项目系列文章目录 第五章 解决linux下mysql FEDERATED 存储引擎的配置和使用 文章目录 C C 气象数据中心实战工业级项目系列文章目录 一 linux下mysql FEDERATED 存储引擎
  • 华为OD机试 - 文件目录大小(Python)

    题目描述 一个文件目录的数据格式为 目录id 本目录中文件大小 子目录id列表 其中目录id全局唯一 取值范围 1 200 本目录中文件大小范围 1 1000 子目录id列表个数 0 10 例如 1 20 2 3 表示目录1中文件总大小是2

随机推荐

  • ubuntu 下 opencv的安装以及配置(亲测有效)

    当在Ubuntu上安装OpenCV时 可以按照以下详细步骤进行操作 1 更新apt包列表 sudo apt update 这将更新系统的包列表 确保可以获取到最新的软件包信息 2 安装所需依赖项 sudo apt install build
  • Vue命名规范

    JS文件命名 一般采用的是小驼峰命名法 如 pieChartHelp 第一个单词小写 其他单词首字母大写 Components 文件命名 一般采用的是大驼峰命名法 如PieChart 所有单词的首字母大写 常量命名 一般全部大写 每个单词使
  • 目标检测YOLO实战应用案例100讲-无监督领域自适应目标检测方法研究与应用

    目录 无监督领域自适应目标检测方法研究 领域自适应目标检测 目标检测相关技术介绍
  • 数学建模之主成分分析(matlab算法)

    主成分分析是一种降维算法 它能将多个指标转换为少数几个主成分 这些主成分是原始变量的线性组合 且彼此之间互不相关 其能反映出原始数据的大部分信息 一般来说 当研究的问题涉及到多变量且变量之间存在很强的相关性时 我们可以考虑使用主成分分析的方
  • 非对称加密算法

    文章目录 概述 DH Diffie Hellman 秘钥交换算法 RSA 基于因子分解 ElGamal 基于离散对数 ECC Elliptical Curve Cryptography 椭圆曲线加密 概述 对称加密算法是因为秘钥的对称而由来
  • alpha shapes提取平面点云边界点

    1 原理介绍 由Edelsbrunner H提出的alpha shapes算法是一种简单 有效的快速提取边界点算法 其克服了点云边界点形状影响的缺点 可快速准确提取边界点 其原理如下 如下图所示 对于任意形状的平面点云 若一个半径为a的圆
  • 从零到一不一样的TOC商城项目:Cloud-Alibaba+DDD,私活利器开源

    刚果商城 不一样的商城系统 刚果商城是个从零到一的商城项目 包含商城核心业务和基础架构两大模块 参照商城系统原型 推出用户 消息 商品 订单 优惠券 支付 网关 购物车等业务模块 通过商城系统中复杂场景 给出对应解决方案 使用 DDD 模型
  • 瑞吉外卖项目1 + 源码

    目录 一 瑞吉外卖项目介绍 1 1 项目介绍 1 2 技术点 1 3 功能架构 项目中所用到的全部功能 1 4 角色 不同角色所对应的不同权限 二 开发环境搭建 2 1 创建项目对应的数据库 两种方式 2 1 1 图形界面创建库形式 2 1
  • 大二第二周总结

    问题 想到了之前追的辩论赛 主题是 被误解是表达者的宿命 反方认为被误解不是表达者的宿命 由于表达者表意含混造成误解的可能性是人力可控的 表达者可在真诚沟通的基础之上 根据对方反应不断调整语言 或者采用表情和肢体等表达方式 对于暂时未理解表
  • 当用了万恶的crontab -r命令后……

    明天计划上个新的应用 需要写脚本获取服务器状态并写入数据库 下午写完脚本 准备先放cron里测试一下 登进服务器 想敲crontab e加一条计划 结果手一滑就敲成了crontab r 然后就悲剧了 因为发现没有备份 没办法 想办法恢复吧
  • redis2txt-获取redis数据并存储到txt文件

    txt文件导入redis 单线程 多线程 list类型 redis cli h ip LRANGE key 0 999999 while read item do echo item gt gt tmp listdata txt done
  • 超全面的语音交互知识总结:从原理、场景到趋势

    1 什么是语音交互 语音交互 VUI 指的是人类与设备通过自然语音进行信息的传递 一次完整的语音交互需要经历ASR NLP Skill TTS的流程 1 ASR 用于将声学语音进行分析 并得到对应的文字或拼音信息 语音识别系统一般分训练和解
  • where not exists 避免重复插入SQL语句

    项目场景 避免重复插入SQL语句 insert into TABLE2 select from TABLE1 where not exists select 1 from TABLE2 where TABLE2 id TABLE1 id a
  • Ubuntu下chgrp的用法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 每天一个linux命令链接 http www cnblogs com peida archive 2012 12 03 2799003 html 实例1 改变文件的群组属性
  • Elasticsearch中 match、match_phrase、query_string和term的区别

    一 text字段和keyword字段的区别 以下给出一个例子 首先建立一个索引和类型 引入一个keywork的字段 PUT my index mappings products properties name type keyword 然后
  • 华为OD机试 Java 实现【计算日期到天数转换】【牛客练习题】

    一 题目描述 根据输入的日期 计算是这一年的第几天 保证年份为4位数且日期合法 二 输入描述 输入一行 每行空格分割 分别是年 月 日 三 输出描述 输出是这一年的第几天 四 Java算法源码 public static void main
  • 200行代码实现Mini ASP.NET Core

    前言 在学习ASP NET Core源码过程中 偶然看见蒋金楠老师的ASP NET Core框架揭秘 不到200行代码实现了ASP NET Core Mini框架 针对框架本质进行了讲解 受益匪浅 本文结合ASP NET Core Mini
  • 逆矩阵的概念、应用和求解

    目录 逆矩阵的概念 求解逆矩阵 应用例子 可能没有逆矩阵 求解逆 方法1 初等行运算 高斯 若尔当 求解逆 方法2 余子式 代数余子式和伴随 求解逆 方法3 程序库 逆矩阵的概念 矩阵运算中 是没有除法的 也就是不能除以一个矩阵 这时就需要
  • C++ 遍历驱动列表(应用层下)

    上代码咯 include stdafx h include
  • (android地图开发) 高德地图手势切换

    效果截图 相关布局文件 手势滑动第一个界面