安卓tips

1.textview里用setText不能放int,不然会崩溃

2.finish()弹出框之后,在当前页面写上protected void onResume() {//加入要刷新的东西}

3.textviewwidth中用fill_parent,可能会出现多行文字却显示一行的问题,改成一个固定大小即可解决

4.请求的url需要编码,如:

content.replace("+", "%2B").replace("/", "%2F").replace("%", "%25").replace("#", "%23").replace("&", "%26").replace("=", "%3D");

+    URL +号表示空格 %2B
空格 URL中的空格可以用+号或者编码 %20
/    分隔目录和子目录 %2F
?    分隔实际的 URL 和参数 %3F
%    指定特殊字符 %25
#    表示书签 %23
&    URL 中指定的参数间的分隔符 %26
=    URL 中指定参数的值 %3D

5.url中的有些表情的编码问题,解决如:

content.replace("<(?!br|img)[^>]+>", "");

6.编码问题可以直接用如下方式解决:

NameValuePair u_id = new BasicNameValuePair("param", jo.toString());
List<NameValuePair> paramsList  = new ArrayList<NameValuePair>();
paramsList.add(u_id);
String str = URLEncodedUtils.format(paramsList, "utf-8");

 7.listview使用menu

menuxml,如:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item 
        android:id="@+id/deletechat"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="删除本地会话"/>
    <item 
        android:id="@+id/reportuser"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="举报"/>
</menu>

registerForContextMenu(listview);

 @Override  
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {  
        // 加载xml中的上下文菜单  
        super.onCreateContextMenu(menu, v, menuInfo);  
        MenuInflater inflate = getMenuInflater();  
        inflate.inflate(R.menu.select_menu, menu);  
    }  
    
    @Override  
    public boolean onCreateOptionsMenu(Menu menu) {  
        // Inflate the menu; this adds items to the action bar if it is present.  
        getMenuInflater().inflate(R.menu.main, menu);  
        return true;  
    }  

// 响应上下文菜单的操作  
    @Override  
    public boolean onContextItemSelected(MenuItem item) {  
        // TODO Auto-generated method stub  
        switch (item.getItemId()) {  
            case R.id.deletechat:  
             AdapterContextMenuInfo menuInfo  = (AdapterContextMenuInfo)item.getMenuInfo();
             int pos = menuInfo.position;

//此处的pos为点击的listview的下标
                break;     
            case R.id.reportuser:  
                break;   
            default:  
                break;  
        }  
        return super.onContextItemSelected(item);  
    }  

 8.本地保存和获取数据:

private static Editor editor;
private static SharedPreferences pref;

private static void initEditor(Context context) {
initPref(context);
editor = pref.edit();
}


private static void initPref(Context context) {
if (null == pref)
pref = context.getSharedPreferences(APPLICATION_PREFERENCES, Context.MODE_PRIVATE);
}

/**
* 获取用户名
*/
public static String getUserID(Context context) {
initPref(context);
return pref.getString(USER_NAME, "none");
}


/**
* 设置用户名
*/
public static void setUserID(Context context, String userid) {
initEditor(context);
editor.putString(USER_NAME, userid);
editor.commit();
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值