文章列表
package com.cc;
import java.util.ArrayList;
import android.app.Activity;
import android.app.ListActivity;
import android.content.ContentUris;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.grap ...
android开发的时候,定义了一个listView,并为他设置了setOnCreateContextMenuListener的监听,但是这样做只能使这个listView中的所有项在长按的时候弹出contextMenu 。
我希望的是有些长按时能弹出contextMenu,有些不能。解决这个问题的办法是为这个listView设置setOnItemLongClickListener监听,然后实现
public boolean onItemLongClick(AdapterView<?> parent, View view,
int position, long id) {
...
正常来说,在ScrollView添加一个ListView后在真机上只会显示ListView的一行多一点,我也不理解为什么会这样,后来我把ListView的layout_height改成400dip,而不是用match_parent和wrap_content,我发现这样的话ListView就显示的多了很多。所以就产生了把ListView所有的item的高度算出来给ListView设置的想法。下面是代码:
public void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter lis ...
3gp video/3gpp
aab application/x-authoware-bin
aam application/x-authoware-map
aas application/x-authoware-seg
ai application/postscript
aif audio/x-aiff
aifc audio/x-aiff
aiff audio/x-aiff
als audio/X-Alpha5
amc application/x-mpeg
ani applicati ...
在加背景时,发现在拖动List或Grid列表时一片漆黑,很是难看。
解决方法:
xml布局文件里设置为:
android:cacheColorHint="#00000000"
java代码里设置为:
listView.setCacheColorHint(0);
或
gridView.setCacheColorHint(0);
其实cacheColorHint只是View的属性而已,ListView、GridView都有这个属性
在设置ImageView资源的时候,这时的图片是来自SD卡,查看API很容易就会看到view.setImageUri(Uri u)这个函数。所以一般会这样写:
ImageView view = (ImageView)findViewById(...);
File file = new File(path);
Uri uri = Uri.from(file);
view.setImageUri(uri);
但是这样做是不行的,因为setImageUri这个函数使不能读取SD卡中的文件的,只能读取手机本身的文件。
所以改用以下这种方式:
Bitmap bit = BitmapFactory.dec ...
做项目时想实现如题所示的效果,试了好多种方法,不见效果,后来无意中看到一个事件才解决。
具体代码是:
myView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == event.ACTION_DOWN) {
btn_new.setImageResource(R.drawable.ti_2);
} else if (event.getAction() == event.AC ...
执行 adb 時,adb-server 会自动的启动。因此,若是已经用 Eclipse 启动过 Android模拟器的话,adb-server 就已经在后台执行了。
在控制台上输入 adb devices 后会出现“???????????? no permissions” 这种情况。
此时的解决办法:
cd进入SDK下的tools目录后执行下面的两条命令:
sudo ./adb kill-server 先杀死原来已经执行的server
sudo ./adb devices 重新启动server
有了framework后,我们不用面对赤裸裸的OS API,做一些重复而繁杂的事情。但天下没有免费的午餐,我们还是需要学会高效正确的使用不同的framework,很多处理某一特定问题的手法在不同的framework中,用起来都会有所不同的。
在Android中,下层是Linux的核,但上层的java做的framework把这一切封装的密不透风。以消息处理为例,在MFC中,我们可以用PreTranslateMessage等东东自由处理消息,在C#中,Anders Hejlsberg老大说了,他为我们通向底层开了一扇“救生窗”,但很遗憾,在Android中,这扇窗户也被关闭了(至少我现在没发现.. ...