ListView相关功能1.android:fastScrollEnabled="true" ListView出现快速滚动的按钮,数据不多的时候,不会出现,只要数据足够多,会自动出现2.android:drawSelectorOnTopWhen set to true, the selector will be drawn over the selected item. Otherwise the selector is drawn behind the selected item. The default value is false.android:drawSelectorOnTop="true" 点击某一条记录,颜色会显示在最上面,记录上的文字被遮...
前言:本文总结了Android客户端与服务器进行交互时,采用RESTful API +Json的交互方式,针对不同的数据形式以及不同的解析方法,如有不足之处,欢迎指正。温馨提示:本文适合有一定Android开发经验的人阅读,如有疑问,欢迎留言讨论。先了解一下相关的基本概念。1. Android客户端与服务器端通信方式通信方式主要有HTTP和Socket。HTTP通信:即使用HTTP协议进行通信,工作原理是客户端向服务器端发送一条HTTP请求,服务器收到之后先解...
很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同。因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值。xml文件代码如下:<Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1"/> <Button android...
从Service的启动方式上,可以将Service分为Started Service和Bound Service。在使用Service时,要想系统能够找到此自定义Service,无论哪种类型,都需要在AndroidManifest.xml中声明:<service android:name=".MyService"> 一:StartService方式启动服务 Started Service相对比较简单,通过context.startService(Intent serviceIntent)启动Service,context.stopService(Intent serviceIntent)停止此Service。AndroidManifest.x...
//标识位的设定
boolean flag=false;
消息的接受,UI更新或者文本更新;Handler handler=new Handler(){@Overridepublic void handleMessage(@NonNull Message msg) {if(msg.what==0x01){textView.setText((String)msg.obj);}}};
//UI的初始化
flag=true;
new Thread(){@Overridepublic void run() {super.run();while(flag){SimpleDateFormat format=new SimpleDateFormat("yyyy年MM月 HH:mm:ss");String timeStr =format.format(S...
一、在SO中关键函数上下断点刚学逆向调试时。大多都满足于在SO中某关键函数上下断点。然后通过操作应用程序,去触发这个断点,然后进行调试详细的步骤可以参见非虫大大的《Android软件安全与逆向分析》简单说:在libsyclover.so文件中有一个函数jnicall1。每次单击按钮的时候,便会调用此函数。1.静态载入此so文件,找到函数的偏移地址为:0x132C<ignore_js_op> 2.执行android_server3.端口转发adb forward tcp:23946 tcp:239464.运...
原创文章,转载请注明出处http://www.cnblogs.com/baipengzhan/p/6286619.html 第三方框架ViewPagerIndicator实现的效果比较好,但当我们从GitHub上查找该项目的使用方法的时候,作者没有指明Android Studio中比较简便的使用方法,造成了一些引入的不便,经过搜索和自己测试,获得了一些比较十分简便的方法,经过自己的测试,完全可用,在此总结出来,方便今后使用。(测试有效的时间截止到2017/01/15,请注意...
Android现在实现Tab类型的界面方式越来越多,今天就把常见的实现方式给大家来个总结。目前写了:1、传统的ViewPager实现2、FragmentManager+Fragment实现3、ViewPager+FragmentPagerAdapter实现4、TabPageIndicator+ViewPager+FragmentPagerAdapter1、传统的ViewPager实现主要就是ViewPager+ViewAdapter这个还是比较常见的,就不多说了效果图:代码:[java] view plaincopypackage com.example.mainframework02; import java.ut...
在写自定义控件的时候,如果不知道整个view的执行过程,那蒙圈是必须的。这篇文章只是个笔记,如果看不懂,欢迎喷水!!1.首先,Activity onCreate并初始化view
2.然后,Activity onResume后调用view的onAttachedToWindow,因此常常在onAttachedToWindow方法中做初始化工作,比如注册一些广播、开始动画等等……
3.接下来,如果设置了背景则调用onDraw,之后倘若是viewgroup则调用dispatchDraw。
说明:dispatchDraw()主要是分发...
AndroidStudio错误总结及解决一. 当安装好AndroidStudio开启的时候出现如下错误:百度的解决方法:1)进入刚安装的Android Studio目录下的bin目录。找到idea.properties文件,用文本编辑器打开。2)在idea.properties文件末尾添加一行: disable.android.first.run=true ,然后保存文件。3)关闭Android Studio后重新启动,便可进入界面。二.出现SDK错误解决方法:配置AndroidSdk路径即可: 原文:http://www.cnblogs.com/lj-103/p/...
常见的向用户发送提示信息的方式有3种,分别为:1)发送Toast信息2)弹出对话框3)发送通知总结如下:方式1:发送Toast信息:这种方式最简单,在之前的学习中多次使用过。Toast是在一个浮动于应用之上的View中显示信息,显示一定的时间间隔后自动消失,不可获得焦点。最简单的用法就是之前的学习中一直使用的:通过一个静态的makeText()方法返回一个Toast对象,然后调用show()方法。如:布局文件添加一个Button: 1<Button2 3android:i...
一、存放位置1.内部存储-放在 data/data 底下, 也就是内部存储, 里面的文件以及文件夹是私有的, 其他 app 不能访问, 也随着 app 卸载而删除;2.放在 sd 卡里面, 如果设置私有, 也就是 getExternalFilesDir 类似的方式去获取, 其他 app 也不能随便访问, 也随着 app 卸载而删除;// P.s: 这 4.4 之后不需要权限3.也可以设置 public, 也就是用 getExternalStoragePublicDirectory() 类似的方式去获取, 其他 app 也能访问, 不会随着 app ...
极力推荐文章:欢迎收藏Android 干货分享阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android1.什么是线程线程就是进程中运行的多个子任务,是操作系统调用的最小单元2.线程的状态1.New:新建状态,new出来,还没有调用start2.Runnable:可运行状态,调用start进入可运行状态,可能运行也可能没有运行,取决于操作系统的调度3.Blocked:阻塞状态,被锁阻塞,暂时不活动,阻塞状态是线程阻塞在进入4.synchronized:关键字修饰...
1、请解释下在单线程模型中Message,Handler,Message Queue,Looper之间的关系。拿主线程来说,主线程启动时会调用Looper.prepare()方法,会初始化一个Looper,放入Threadlocal中,接着调用Looper.loop()不断遍历Message Queue,Handler的创建依赖与当前线程中的Looper,如果当前线程没有Looper则必须调用Looper.prepare()。Handler , sendMessage到MessageQueue,Looper不断从MessageQueue中取出消息,回调handleMessage方法。 2、如...
咋看标题感觉与WebRTC和音视频无关,其实有着很大的关联,文章来自博客园RTC.Blacker,转载请说明出处。 背景:一方面因为对开发人员比较了解,不喜欢约束,喜欢自由自在,所以我们向往自由职业。另一方面企业老总总是让推荐人才,同时有些真正的人才却很难找到好的企业。基于以上两点我决定发表这篇文章,下面那提供三种类型的工作供您选择: 一、自由职业:1、职位1:1.1、熟悉XMPP和openfire,客户想将IM功能外包给熟悉的人士完...