自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 Android app:EditTextView,当输入的数据不符合所需求的数据时使用setError可以提供错误提示

private EditTextView ed;ed.setError("你输入的数据为空,请重新输入")

2021-03-18 11:53:42 362

转载 TBS X5内核SDK静态集成jar完美解决方案

引用:https://51huanqi.cn/%E8%85%BE%E8%AE%AFtbs-x5%E5%86%85%E6%A0%B8%E9%9D%99%E6%80%81%E9%9B%86%E6%88%90jar%E5%AE%8C%E7%BE%8E%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88/前言:本篇文章用于解决TBSx5静态无法成功启动的问题关于TBS:腾讯浏览服务是致力于优化移动端webview体验的整套解决方案。该方案由SDK、手机QQ浏览器X5内核和X5云端服务组成,

2021-01-20 15:16:56 3936 8

转载 Android App开发学习第二十八天:WebView(网页视图)基本用法

本节给大家带来的是Android中的一个用于显示网页的控件:WebView(网页视图)。现在Android应用 层开发的方向有两种:客户端开发和HTML5移动端开发!所谓的HTML5端就是:HTML5 + CSS + JS来构建 一个网页版的应用,而这中间的媒介就是这个WebView,而Web和网页端可以通过JS来进行交互,比如, 网页读取手机联系人,调用手机相关的API等!而且相比起普通的客户端开发,HTML5移动端有个优势: 可以用百分比来布局,而且如果HTML5端有什么大改,我们不用像客户端那样

2020-12-19 15:47:52 567 1

转载 Android App开发学习第二十八天:Android 调用 WebService

Android 调用 WebService1.WebService简介PS:如果看完上面简介还不是很清楚的话,那么就算了,之前公司就用C#搭的一个WebService! 本节我们并不讨论如何去搭建一个WebService,我们仅仅知道如何去获取WebService提供的服务, 然后解析返回的XML数据,然后把相关数据显示到我们的Android设备上就好!2.去哪里获取WebService服务网上有很多提供WebService的站点,首先找到这些站点,然后获取相应的服务即可! 这里选取WebXml和

2020-12-19 11:39:48 469 1

转载 Android App开发学习第二十七天:Android JSON数据解析

Android JSON数据解析1.Json概念以及与XML的比较1)Json是什么?答:JavaScript Object Natation, 一种轻量级的数据交换格式, 与XML一样, 广泛被采用的客户端和服务端交互的解决方案!具有良好的可读和便于快速编写的特性。2)Json与XML的比较:JSON和XML的数据可读性基本相同;JSON和XML同样拥有丰富的解析手段JSON相对于XML来讲,数据的体积小JSON与JavaScript的交互更加方便JSON对数据的描述性比XML较差JS

2020-12-18 14:23:42 212

转载 Android App开发学习第二十二天:Fragment

1.基本概念1)它是什么鬼,有什么用?答:Fragment是Android3.0后引入的一个新的API,他出现的初衷是为了适应大屏幕的平板电脑, 当然现在他仍然是平板APP UI设计的宠儿,而且我们普通手机开发也会加入这个Fragment, 我们可以把他看成一个小型的Activity,又称Activity片段!想想,如果一个很大的界面,我们 就一个布局,写起界面来会有多麻烦,而且如果组件多的话是管理起来也很麻烦!而使用Fragment 我们可以把屏幕划分成几块,然后进行分组,进行一个模块化的管理!从而可

2020-12-17 13:50:44 415

原创 Android App开发学习第二十六天:监听Back键的方法

要实现监听Back键的方法我已知的有两种:方法一:重写onKeyDown()方法,监听KEYCODE_BACK触发。 //返回 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { finish(); } return super.onKeyDown(keyC

2020-12-17 10:37:36 480

转载 Android App开发学习第二十五天:android程序按home切换到后台,点击launcher的图标切换到前台,当前页面退出回到启动页

ps:在debug运行时不会出现此问题,但在release运行时会出现此类问题,原因就是debug运行时是adb安装的,release运行时是用的设备的系统的安装器去安装的,可能有些些设置被厂家修改过了,具体见下方。问题现象:第一次安装应用,不要用adb安装,而是要用系统的安装器去安装,安装完成后,直接点击打开,不要点击完成,进入应用,随便点开其他界面,点击home键让应用进入后台,然后再点击应用的图标进入应用,这是应用会重新回到入口界面,实际上应用已经重启了。重新杀掉应用,以后再每次打开应用都不会再有

2020-12-15 15:18:58 715

转载 Android App开发学习第二十四天:Dialog样式的Activity实现单击区域外不消失

dialog除了使用Dialog类来实现之外,还可以使用Dialog样式的Activity来实现,只需要在注册Activity时指明theme为adnroid:Theme.Dialog就行,这样的Dialog因为实际上是个Activity而更加丰富灵活。在API11(如果没记错的话)之前的dialog样式Activity是模式的,点击对话框外部对话框不会消失,而API11之后虽然依然是模式的,但点击对话框外部后对话框消失,相当于点击了返回键。如何人为控制点击对话框(Activity)外部时窗口是否销毁呢?

2020-12-14 19:35:44 657

原创 Android App开发学习第二十三天: No implementation found for java.io.FileDescriptor com.example.myde

在开启串口的时候报了如下错误No implementation found for java.io.FileDescriptor com.example.mydemo.serial.SerialPort.open(java.lang.String, int, int) (tried Java_com_example_mydemo_serial_SerialPort_open and Java_com_example_mydemo_serial_SerialPort_open__Ljava_lang_Str

2020-12-11 16:35:39 1516

转载 Android App开发学习第二十一天:多个Activity bindService的使用及Service生命周期

原文:https://blog.csdn.net/iispring/article/details/48169339Android中有两种主要方式使用Service,通过调用Context的startService方法或调用Context的bindService方法,本文只探讨纯bindService的使用,不涉及任何startService方法调用的情况。如果想了解startService相关的使用,请参见《Android中startService的使用及Service生命周期》。bindServic

2020-12-07 15:53:23 423

转载 Android App开发学习第二十天:Gestures(手势)

Gestures(手势)手势是:连续触碰的行为,比如左右上下滑动屏幕,又或者画一些不规则的几何图形! Android对上述两种手势行为都提供了支持:Android提供手势检测,并为手势识别提供了相应的监听器!Android运行开发者自行添加手势,并且提供了相应的API识别用户手势!如果你的手机是Android 4.x的原生Android系统的话,你可能可以在你的手机或者平板上看到谷歌 提供的一个Gesture Builder的APP,该应用允许用户以类似于涂鸦的方式绘制一个手写符号,使之 对应一个字

2020-12-04 16:56:24 351

转载 Android App开发学习第二十天:AsyncTask异步任务

AsyncTask异步任务1.相关概念1)什么是多线程:答:先要了解这几个名称:应用程序,进程,线程,多线程!!应用程序(Application):为了完成特定任务,用某种语言编写的一组指令集合(一组静态代码)进程(Process) :运行中的程序,系统调度与资源分配的一个独立单位,操作系统会为每个进程分配 一段内存空间,程序的依次动态执行,经理代码加载 -> 执行 -> 执行完毕的完整过程!线程(Thread):比进程更小的执行单元,每个进程可能有多条线程,线程需要放在一个进程中才

2020-12-04 16:09:50 256

转载 Android App开发学习第二十天:响应系统设置的事件(Configuration类)

1.Configuration给我们提供的方法列表densityDpi:屏幕密度fontScale:当前用户设置的字体的缩放因子hardKeyboardHidden:判断硬键盘是否可见,有两个可选值:HARDKEYBOARDHIDDEN_NO,HARDKEYBOARDHIDDEN_YES,分别是十六进制的0和1keyboard:获取当前关联额键盘类型:该属性的返回值:KEYBOARD_12KEY(只有12个键的小键盘)、KEYBOARD_NOKEYS、KEYBOARD_QWERTY(普通键盘)ke

2020-12-04 15:46:29 200

转载 Android App开发学习第二十天:监听EditText的内容变化

1.监听EditText的内容变化由题可知,是基于监听的事件处理机制,好像前面的点击事件是OnClickListener,文本内容 变化的监听器则是:TextWatcher,我们可以调用EditText.addTextChangedListener(mTextWatcher); 为EditText设置内容变化监听!简单说下TextWatcher,实现该类需实现三个方法:public void beforeTextChanged(CharSequence s, int start,int count,

2020-12-04 15:27:11 259

转载 Android App开发学习第二十天:onTouchEvent和onTouchListener+多点触碰(实现图片的缩放和平移)

1.基于监听的TouchListenermain.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" andr

2020-12-04 14:04:20 411

转载 Android App开发学习第十九天:基于回调的事件处理机制

基于回调的事件处理机制1.什么是方法回调?文字表述:答:是将功能定义与功能分开的一种手段,一种解耦合的设计思想;在Java中回调是通过接口来实现的, 作为一种系统架构,必须要有自己的运行环境,且需要为用户提供实现接口;实现依赖于客户,这样就可以 达到接口统一,实现不同,系统通过在不同的状态下"回调"我们的实现类,从而达到接口和实现的分离!举个简单例子:比如:你周五放学回家,你问你老妈煮好饭没,你妈说还没煮;然后你跟她说: 老妈,我看下喜羊羊,你煮好饭叫我哈! 分析:你和老妈约定了一个接口,你通过这

2020-12-03 17:14:01 263

转载 Android App开发学习第十九天:基于监听的事件处理机制的五种不同的形式

基于监听的事件处理机制五种不同的使用形式:1)直接用匿名内部类平时最常用的一种:直接setXxxListener后,重写里面的方法即可; 通常是临时使用一次,复用性不高!实现代码如下:MainAcivity.java:package com.jay.example.innerlisten; import android.os.Bundle; import android.view.View; import android.view.View.OnClickList

2020-12-03 16:42:22 204

原创 Android App开发学习第十八天:启动时隐藏软键盘

在设置了编辑框后,进入APP后会自动聚焦并弹出软键盘,要想隐藏软键盘,可在oncreat()方法中使用 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);隐藏软键盘

2020-11-27 10:34:36 146

转载 Android App开发学习第十七天:Drawable之getIntrinsicWidth()和getIntrinsicHeight()

在Android的开发中,凡是需要画图的地方大都离不开类Drawable。Android的官方文档中介绍这个类就是被设计用来表示可以被画的东西。A Drawable is a general abstraction for “something that can be drawn.”细心的同学可能会发现这个类提供了这样两个方法:getIntrinsicWidth()和getIntrinsicHeight(),顾名思义他们是用来取得Drawable的固有的宽度和高度。那么问题就来了:我们有时候通过这两个方法

2020-11-24 10:18:36 532

转载 Android App开发学习第十七天:系统设置SystemMethod

获取屏幕宽和高DisplayMetrics dm =getResources().getDisplayMetrics(); int w_screen = dm.widthPixels; //宽度 单位为pxint h_screen = dm.heightPixels; //高度//dm.densityDpi 密度densityDpi 每英寸多少个像素点,density = densityDpi /160APP根据densityDpi的大小决定调用哪个文件夹下的图片,关系如下:draw

2020-11-24 10:13:31 116

转载 Android App开发学习第十六天:focusable和focusableInTouchMode的区别

在项目中在某种条件下需要把一个文本编辑框设置成TimePicker选择器的模式。所以首先要设置edittext不可编辑。我就把它设置成不可获取焦点的形式,这时发现有两种方案可行,即focusable和focusableInTouchMode。区别:1)、普通模式focusable 请求普通获取焦点的能力(可以理解为通过物理键盘),在xml中的配置是android:focusable="true"。 出现这种模式主要是因为Android系统不仅仅是针对手机的,有可能在电视、手表等非触

2020-11-23 20:09:59 369

原创 Android App开发学习第十五天:ViewPager的简单使用

概述ViewPager就是一个简单的页面切换组件,可以往里面填充多个View,然后可以通过滑动来切换到不同的View,它和ListView、GridView一样需要适配器,对于ViewPager有一个特定的适配器PagerAdapter。然后根据官方推荐,填充的View最好使用Fragment,方便管理。对于Fragment也有两个特定的适配器FragmentPagerAdapter和FragmentStatePagerAadapter。对于FragmentPagerAdapter而言最多只能加载三个

2020-11-18 16:12:21 282

原创 Android App开发学习第十五天:DrawerLayout侧滑菜单

注意事项:1.主内容视图一定要是DrawerLayout的第一个子视图2.主内容视图宽度和高度需要match_parent3.必须显示指定侧滑视图的android:layout_gravity属性 android:layout_gravity = "start"时,从左向右滑出菜单 android:layout_gravity = "end"时,从右向左滑出菜单 不推荐使用left和right!!!实现单个侧滑菜单activity_main.xml<?xml version="1.0" e

2020-11-18 16:12:08 197

原创 Android App开发学习第十四天:菜单Menu

OptionMenu重写public boolean onCreateOptionsMenu(Menu menu):调用OptionMenu,在这里完成菜单初始化public boolean onOptionsItemSelected(MenuItem item):菜单项被选中时触发,这里完成事件处理实现点击菜单项切换字体颜色<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.Const

2020-11-17 19:45:23 454

原创 Android App开发学习第十四天:BaseAdapter的一些优化

重用ConvertView一般我们在重写BaseAdapter里的getView()中,有多少条数据就要inflate多少次布局文件,比较浪费资源。未优化前的代码 @Override public View getView(int position, View convertView, ViewGroup parent) { convertView = LayoutInflater.from(mContext).inflate(R.layout.item_demo,parent,

2020-11-17 16:16:17 148

原创 Android App开发学习第十四天:RecyclerView的简单使用

简介RecyclerView 可以用来替代ListView和GridView应用流程1.导入相关依赖进入project structure添加依赖2.设计UI界面和item样式activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http

2020-11-17 11:28:53 263

转载 Android App开发学习第十三天:不同SDK版本AlarmManager实现重复调用。

博文出处:关于使用AlarmManager的注意事项,欢迎大家关注我的博客,谢谢!快过年了,更新春节前的最后一篇博客。最近在做一个需求:客户端按照规定的时间间隔向服务端发送定位。一看到这个需求就想到了使用 AlarmManager 来实现。 AlarmManager 经常被用来执行定时任务,比如设置闹铃、发送心跳包等。也许有人会有疑问:为什么不能使用相同具有定时效果的 Timer 和 Handler 呢?其实答案非常简单,相对于 Handler 来说,使用 sendEmptyMessageDelaye

2020-11-12 17:15:32 392 1

原创 Android App开发学习第十二天:service

什么是Service能够在后台长时间运行,并且没有用户界面的应用程序组件。Service的分类StartedService:通过Activity调用startService(),启动ServiceBoundService:通过Activity调用bindService(),启动后,当activity停止则service停止service的基本用法1.创建与配置package com.example;import android.app.ActivityManager;import a

2020-11-12 11:54:44 1246 3

原创 Android App开发学习第十二天:Handler消息处理

Handler消息传递机制子线程不允许操作主线程的U界面Handler是android中提供的一个消息处理的机制1.在任意线程中发送消息2.在主线程中获取并处理消息package com.example;import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.os.Handler;import a

2020-11-11 17:18:15 202

原创 Android App开发学习第十一天:使用JSON传入参数的两种方法

第一种:字符串拼接如要传入的json数据格式为:{ “username”:{}“data”:[{},{},{}…]} //对象转换成Json格式数据 Gson gson = new Gson(); sJson = gson.toJson(arryListEntities); String sData = "{\n\"username\":{""+username+""}\n\"data:\"" ;

2020-11-10 19:24:03 499

原创 Android App开发学习第十天:EditText的java代码属性设置

EditTextEditText editText = findViewById(…)editText.setInputType:设置输入类型。如EditorInfo.TYPE_TEXT_VARIATION_PASSWORD:表示输入的密码不可见EditorInfo.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD:表示输入的密码可见editText.setTransformationMethod:用来设置其中text的转换显示,如PasswordTransformatio

2020-11-06 17:41:14 475

转载 Android App开发学习第十天:AsyncTask异步任务

AsyncTask

2020-11-06 17:40:52 118

转载 Android app开发学习第九天:INSTALL_FAILED_CONFLICTING_PROVIDER 错误解决方法

项目中有两个应用都集成了个推服务,并在androidManifest.xml文件中添加了下面一段代码 android:name="android.support.v4.content.FileProvider" android:authorities="com.dysen.qj.wMeter.fileProvider" android:grantUriPermissions="true" android:exported="false"> androi

2020-11-05 19:48:47 205

原创 Android App开发学习第8天:数据存储技术

SharedPreferences存储什么是SharedPreferences存储?它是Android提供的,用来以最简单的方式对数据进行永久保存的方法。SharedPreferences存储的文件格式及路径文件格式:XML文件存储路径:data目录下找到对应的程序包名下找到shared_prefs目录里有mrsoft.xml文件用来作为存储文件。使用SharedPreferences存储数据的步骤1.获取SharedPreferences对象1.getSharedPreferences()

2020-11-05 09:00:40 454

原创 Android App开发学习第8天:消息、通知与广播

通过T**oast显示消息提示框创建Toast对象new Toast(context)makeText()设置消息提示样式调用show方法Toast.makeText(MainActivity.this, "", Toast.LENGTH_SHORT).show();使用AlertDialog实现对话框应用AlertIDalog类实现4中不同类型的对话框。显示带取消、确定按钮的对话框AlertDialogsetIcon()setTitle()setMessage()setBu

2020-11-05 09:00:14 383

原创 Android App开发学习第8天:Action Bar

初识Action Bar导航栏Action Bar基本应用显示和隐藏Action Bar隐藏有两种方法方法一:在AndroidManifest.xml中在指定的Activity中修改theme使得默认action bar取消<activity android:name=".MainActivity" android:theme="@style/Theme.AppCompat.Light.NoActionBar"> >方法二:设

2020-11-05 08:59:57 181

原创 Android App 开发学习第六天:资源

字符串资源定义字符串资源文件 <string使用字符串资源在xml中使用 android:text="@string/earn"在java中使用 TextView textView = this.findViewById(R.id.textview); textView.setText(getResources().getString(R.string.earn));颜色资源#透明度RGB定义颜色资源文件<color

2020-11-02 19:34:17 172

原创 Android App 开发学习第五天:Android事件处理和手势

事件处理概述1.基于监听的事件处理 2.基于回调的事件处理 重写Android组件的回调方法或者Activity的回调方法 一般会重写onTouchEvent,onKeyDown,onKeyUp区别: 基于回调的事件处理方式用于处理通用性的事件 基于监听的事件处理方式用于处理某些特定的事件物理按键事件处理onKeyDown():按下onKeyUp():抬起onKeyLongPress():长按安卓系统手机为物理按键提供的相对应的常量音量键:KEYCODE_VOLUME_UP

2020-10-31 17:49:42 172

原创 Android App 开发学习第五天:应用核心Intent

初识Intent类似于邮递员,传输东西。Intent基本应用开启一个Activity开启一个service传递广播Intent对象的属性Componentname可以用来指定要跳转的Activitycomponentname(包名,要跳转的Activity的全限定类名)setComponent(ComponentName)Action和Data1.Action属性2.Data属性ACTION_EDIT->content://com.android.contacts/co

2020-10-31 17:46:49 253

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除