小结几个小问题,关于数据库乱码,dialog
2012-07-14 01:29
295 查看
1、读取数据库中的中文时出现乱码问题
2、完全自定义的dialog
3、在xml文件中定义时间格式
1:数据库中文乱码
只要在Cursor读取时,用二进制的形式(getBolb())读出来再转码就可以了
2:自定义dialog
xml布局
styles.xml
3:在xml文件中定义时间格式,并在程序中引用
2、完全自定义的dialog
3、在xml文件中定义时间格式
1:数据库中文乱码
只要在Cursor读取时,用二进制的形式(getBolb())读出来再转码就可以了
String s = cursro.getBolb(1); String content = new String(s, "gb2312");
2:自定义dialog
package org.ila.car.filemanager; import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.TextView; /** * 有确定有取消按钮的信息提示对话框 * @author wusj * */ public class MsgDialog extends Dialog implements android.view.View.OnClickListener{ private int titleID; private int msgID; private Context context; private OnOkClickListener click; private String msg; public void setOnOkClickListener(OnOkClickListener c) { this.click = c; } public interface OnOkClickListener{ public void onClick(MsgDialog d); } public MsgDialog(Context context, int theme, int titleID, int msgID) { super(context, theme); this.context = context; this.titleID = titleID; this.msgID = msgID; } public MsgDialog(Context context, int style, int titleID, String msg){ super(context, style); this.context = context; this.titleID = titleID; this.msg = msg; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); View view = LayoutInflater.from(context).inflate(R.layout.msg_dialog_layout, null); setContentView(view); TextView tvTitle = (TextView) view.findViewById(R.id.tv_title); TextView tvMsg = (TextView) view.findViewById(R.id.tv_msg); tvTitle.setText(context.getResources().getString(titleID)); if (msg == null){ tvMsg.setText(context.getResources().getString(msgID)); } else { tvMsg.setText(msg); } TextView tvOk = (TextView) view.findViewById(R.id.tv_ok); tvOk.setOnClickListener(this); TextView tvCancel = (TextView) view.findViewById(R.id.tv_cancel); tvCancel.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { MsgDialog.this.dismiss(); } }); } public void onClick(View v) { if (click != null) { click.onClick(this); } } }
xml布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="348dip" android:layout_height="193dip" android:background="@drawable/fm_dialog_bg" android:gravity="center" android:orientation="vertical" android:padding="6dip" > <TextView android:layout_marginTop="2dip" android:layout_marginLeft="2dip" android:textColor="#ffffff" android:textSize="22sp" android:id="@+id/tv_title" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/fm_dialog_top_bg" /> <TextView android:layout_margin="10dip" android:layout_weight="1" android:id="@+id/tv_msg" android:layout_width="fill_parent" android:layout_height="0dip" /> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="1dip" android:orientation="horizontal" > <TextView android:id="@+id/tv_ok" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/fm_dialog_btn_ok_bg" android:gravity="center" android:text="确定" /> <TextView android:id="@+id/tv_cancel" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/fm_dialog_btn_cancel_bg" android:gravity="center" android:text="取消" /> </LinearLayout> </LinearLayout>
styles.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="dialog" parent="@android:style/Theme.Dialog"> <!-- name是我们在使用时要用到的资源的标志,parent是指当前的样式所继承的父类样式 --> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <!-- 隐藏标题栏 --> <item name="android:background">@android:color/transparent</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:backgroundDimAmount">0.6</item> </style> </resources>
3:在xml文件中定义时间格式,并在程序中引用
Values.xml中 <string name="min_available" msgid="5493947690062988925">"还剩 <xliff:g id="MINUTES">%d</xliff:g> 分钟"</string> 程序中引用: timeStr = String.format(res.getString(R.string.min_available), t/60 + 1);
相关文章推荐
- 关于在java web中,存储数据库产生的中文乱码问题
- 关于数据库乱码的问题,以mysql数据库为例(个人心得,勿喷)
- [总结]关于数据库安装中的几个问题
- GIS开发随笔(2)——关于建立GIS数据库的几个问题
- 关于UEditor插件的使用以及UEditor数据回显问题,数据库存储标签代码前台页面如何解析问题小结
- 关于jsp连接sql server2005 写入数据库中文乱码的问题
- Mysql:关于数据库数据读写的乱码问题
- 关于数据库乱码的问题
- 极速快三平台出租关于数据库自增主键的几个问题
- 关于解决乱码问题的几个步骤
- 关于读取数据库时中文编程乱码的问题
- 关于Androdi中SQLITE 3采用GBK编码存储,数据库中文乱码问题。
- 关于页面中文正常显示,存到数据库乱码的问题
- 关于数据库插入数据出现乱码问题
- 关于往数据库插入汉字时,显示乱码的问题
- 关于数据库乱码问题
- oracle数据库,关于乱码问题的解决方案
- 关于乱码的问题,从数据库读取出来的是 ?????
- jsp关于数据库乱码问题
- 关于从插入到数据库里面的简体中文乱码的问题