pengwei's Picture

pengwei

0

227 posts

actionBar添加菜单栏

在res下新建menu文件夹 在menu文件夹下创建一个菜单文件,比如home_menu 在activity中创建菜单,复写onCreateOptionsMenu方法 @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.webrowser_menu, menu); return true; } 在onOptionsItemSelected(MenuItem item)中设置点击事件 @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()){ case R.id.webrowsermenufresh: webView.reload(); break; default: } return true; } 别忘了设置theme为包含actionBar的,不然会报空指针的 android:theme="@android:style/

阅读全文...

关于android:configChanges="keyboardHidden|orientation"

一般在AndroidManifest.xml文件中都没有使用到android:configChanges=”keyboardHidden|orientation”配置,当然还是很有用的哈 就是如果配置了这个属性,当我们横竖屏切换的时候会直接调用onCreate方法中的onConfigurationChanged方法,而不会重新执行onCreate方法,那当然如果不配置这个属性的话就会重新调用onCreate方法了,下面是测试 AndroidManifest.xml文件 main.xml文件 TestActivity.java文件 package com.test; import android.app.Activity; import android.content.res.Configuration; import android.os.Bundle; import android.widget.EditText; import android.widget.TextView; public class TestActivity extends Activity { EditText et; TextView

阅读全文...

Mac下配置PHP+MySql环境

Mac下配置PHP+MySql环境   由于最近需要布置mantis用来进行bug追踪,在此记录其过程。 由于PHP apache环境在Mac OS上是自带的,所以不需要另处下安装包,只需要简单配置一下即可。 首先打开终端输入命令: sudo vim /etc/apache2/httpd.conf   其中有一行是这样的 #LoadModule php5_module libexec/apache2/libphp5.so   www.2cto.com   将前面的#号去掉。   然后打开系统偏好设置中的共享,将web共享勾上,如下图 ![](http://up.2cto.com/2012/0728/20120728100916976.png)   重启apache, 命令如下: sudo apachectl restart   这样就可以在浏览器中输入http://localhost/,如果出现 It works!

阅读全文...

[转]Android 线程 Looper.prepare()、Looper.loop()

转自:http://blog.csdn.net/heng615975867/article/details/9193899 Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取消息,处理消息。 注:写在Looper.loop()之后的代码不会被立即执行,当调用后mHandler.getLooper().quit()后,loop才会中止,其后的代码才能得以运行。Looper对象通过MessageQueue来存放消息和事件。一个线程只能有一个Looper,对应一个MessageQueue。 以下是Android API中的一个典型的Looper thread实现: class LooperThread extends Thread { public Handler mHandler; public void run() { Looper.prepare(

阅读全文...

安卓子线程访问UI线程的四种方法

1.第一种 Handler机制:通过Handler+Message实现通信 Message msg = new Message(); msg.what = 0x1234; msg.obj = null; handler2.sendMessage(msg); 2.第二种 Activity.runOnUiThread(runnable); runOnUiThread(new Runnable() { public void run() { tv.setText("执行完成"); } }); 3.第三种 View.post(runnable); View.post(Runnable)方法。在post(Runnable action)方法里,View获得当前线程(即UI线程)的Handler,然后将action对象post到Handler里。在Handler里,

阅读全文...

手把手教Git使用

转自:http://www.zouxiuping.com/archives/2790 目录: 1、简单认识Git 2、下载与安装 3、安装SourceTree 4、配置SourceTree 5、上传代码 适用环境:Windows 作者:小z 最后整理时间:2014/05/07 1、简单认识Git Git是一个分布式版本控制/软件配置管理软件,原是Linux内核开发者林纳斯·托瓦兹(Linus Torvalds)为更好地管理Linux内核开发而设计。应注意的是,这与GNU Interactive Tools(一个类似Norton Commander界面的文件管理器)有所不同。 Git是用于Linux内核开发的版本控制工具。与CVS、Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。Git的速度很快,

阅读全文...

ANDROID程序员 面试问题

除了algorithm, data structure以及 design pattern以外, 面试中要区别哪些程序员是对[Android开发](http://www.apkbus.com/)比较了解的,  哪些只是刚刚上手等等, 用什么问题呢?  下面提供几个问题, 欢迎大家提供自己的答案:1. android平台上有四个java类跟sensor的使用有关, 列举并解释各自的目的。2. contentprovider是什么, 通常如何使用? 你能不能使用intent向一个contentprovider提供数据? 如果不能, 那一般都是怎么跟contentprovider进行数据交互的? 3. 列举出intent的常见用法。4. 列举出activity的生命周期函数, 并描述一种情形, 在onPause() 和onStop()没被调用的情况下 onDestroy()被调用了。5. 以下代码在什么情况下会crash?  你应该如何改进防止这种crash?Intent sendIntent = new Intent(); sendIntent.setAction(Intent.ACTION_SEND); sendIntent.putExtra(Intent.

阅读全文...

NDK入门小程序

在项目的根目录创建jni文件夹,包含三个文件 hello-jni.c   Android.mk  Application.mk hello-jni.c include #include jstring JavacomstudyAndroidProMain_getNum( JNIEnv* env, jobject thiz ){ return (*env)->NewStringUTF(env, "Hello JNI!"); } Android.mk Copyright (C) 2009 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use

阅读全文...