package qrcode.com.cn;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Bitmap.Config;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.util.DisplayMetrics;
import android.view.Gravity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.ViewFlipper;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemSelectedListener;
public class DrawQRCode extends Activity implements SurfaceHolder.Callback {
private String TAG = "HIPPO";
private SurfaceView mSurfaceView01;
private SurfaceHolder mSurfaceHolder01;
private TextView tv;
private String[] provinces = new String[] {
"小", "中", "大"
};
public int size = 3;
private Bitmap mCanvasBmp = null;
private boolean[][] mEncoding;
private ButtonOnClick buttonOnClick = new ButtonOnClick(1);
private PopupWindow popup;
private ViewFlipper mViewFlipper;
private LinearLayout mLayout;
private GridView toolbarGrid, mGridView, mTitleGridView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initPopupMenu();// 初始化Popup Menu菜单
createPopupWindow();
// 隐藏程序的标题栏 ,使应用程序全屏幕运行
// requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.drawqrcode);
// 获得屏幕解析像素
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
// 以SurfaceView作为相机Preview之用
mSurfaceView01 = (SurfaceView) findViewById(R.id.mSurfaceView1);
// 绑定SurfaceView
mSurfaceHolder01 = mSurfaceView01.getHolder();
mSurfaceHolder01.addCallback(DrawQRCode.this);
Bundle bundle = this.getIntent().getExtras();
char sort1 = bundle.getChar("sort1");
tv = (TextView) findViewById(R.id.result);
tv.setTextSize(19);
switch (sort1) {
case 'N': {
String sort = bundle.getString("sort");
String name = bundle.getString("name");
String occupation = bundle.getString("occupation");
String address = bundle.getString("address");
String mobilephone = bundle.getString("mobilephone");
tv.setText("您的" + sort + "信息如下:" + "\n\n\n姓名:" + name + "\n\n\n职业:" + occupation + "\n\n\n地址:"
+ address + "\n\n\n联系方式:" + mobilephone);
break;
}
case 'M': {
String sort = bundle.getString("sort");
String phonenumber = bundle.getString("phonenumber");
String text = bundle.getString("text");
tv.setText("您的" + sort + "信息如下:" + "\n\n\n收件人:" + phonenumber + "\n\n\n正文:" + text);
break;
}
case 'E': {
String sort = bundle.getString("sort");
String email = bundle.getString("email");
String theme = bundle.getString("theme");
String text = bundle.getString("text");
tv.setText("您的" + sort + "信息如下:" + "\n\n\n收件人:" + email + "\n\n\n主题:" + theme + "\n\n\n正文:"
+ text);
break;
}
case 'T': {
String sort = bundle.getString("sort");
String title = bundle.getString("title");
String text = bundle.getString("text");
tv.setText("您的" + sort + "信息如下:" + "\n\n\n标题:" + title + "\n\n\n正文:" + text);
break;
}
case 'U': {
String sort = bundle.getString("sort");
String title = bundle.getString("title");
String url = bundle.getString("url");
tv.setText("您的" + sort + "信息如下:" + "\n\n\n标题:" + title + "\n\n\n网址:" + url);
break;
}
default:
break;
}
// 绘制并保存条形码
Button draw = (Button) findViewById(R.id.save);
draw.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Bitmap bitmap = AndroidQREncode(tv.getText().toString(), 10);
saveMyBitmap("test4", bitmap);
}
});
// 返回选择界面
Button back = (Button) findViewById(R.id.back);
back.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(DrawQRCode.this, CQRcode.class);
startActivity(intent);
DrawQRCode.this.finish();
}
});
//保存条形码
Button send = (Button)findViewById(R.id.send);
send.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Bitmap bitmap = AndroidQREncode(tv.getText().toString(), 10);
sendBitmap("QR");
}
});
//设置大小
Button set = (Button)findViewById(R.id.set);
set.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(DrawQRCode.this).setTitle("选择图片大小").setSingleChoiceItems(provinces, size - 2,
buttonOnClick).setPositiveButton("确定", buttonOnClick).setNegativeButton(
"取消", buttonOnClick).show();
}
});
}
// 自定义QRCode函数
public Bitmap AndroidQREncode(String strEncoding, int qrcodeVersion) {
try {
// 构建QRCode编码对象
com.swetake.util.Qrcode testQrcode = new com.swetake.util.Qrcode();
/* L','M','Q','H' */
testQrcode.setQrcodeErrorCorrect('M'); // 错误修正率
/* "N","A" or other */
testQrcode.setQrcodeEncodeMode('B');
/* 0-20 */
testQrcode.setQrcodeVersion(qrcodeVersion);
// getBytes
byte[] bytesEncoding = strEncoding.getBytes("utf-8");
if (bytesEncoding.length > 0) {
// 转化成boolean数组
mEncoding = testQrcode.calQrcode(bytesEncoding);
setContentView(new MyView(this));
}
} catch (Exception e) {
e.printStackTrace();
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
QR.rar_QR码_andriod 二维码_qr_二维码_二维码解码 (143个子文件)
resources.ap_ 205KB
CQRcode.apk 1.45MB
DrawQRCode.class 13KB
CQRcode.class 8KB
R$drawable.class 3KB
DrawQRCode$MyView.class 2KB
DrawQRCode$6.class 2KB
CQRcode$6.class 2KB
DrawQRCode$MenuTitleAdapter.class 2KB
CQRcode$MenuTitleAdapter.class 2KB
CQRcode$10.class 2KB
CQRcode$8.class 2KB
CQRcode$14.class 2KB
CQRcode$12.class 2KB
DrawQRCode$4.class 2KB
CQRcode$3.class 1KB
DrawQRCode$5.class 1KB
CQRcode$1.class 1KB
DrawQRCode$1.class 1KB
DrawQRCode$3.class 1KB
CQRcode$2.class 1KB
DrawQRCode$2.class 1KB
R$id.class 1KB
DrawQRCode$ButtonOnClick.class 903B
CQRcode$4.class 787B
CQRcode$5.class 748B
CQRcode$11.class 742B
CQRcode$9.class 741B
CQRcode$13.class 741B
CQRcode$7.class 739B
R$string.class 607B
R$layout.class 593B
R.class 580B
R$anim.class 408B
R$color.class 380B
R$attr.class 325B
.classpath 522B
Thumbs.db 125KB
classes.dex 526KB
SwetakeQRCode.jar 1014KB
mail.jar 430KB
activation.jar 50KB
additionnal.jar 45KB
DrawQRCode.java 18KB
CQRcode.java 15KB
R.java 8KB
bg.png 35KB
menu_bg.png 13KB
toolbar_menu_bg.png 13KB
menu_bg2.png 13KB
menu_fullscreen.png 5KB
icon.png 4KB
icon.png 3KB
menu_inputurl.png 2KB
menu_debug.png 2KB
menu_test.png 2KB
controlbar_back.png 2KB
menu_filemanager.png 2KB
menu_checkupdate.png 2KB
menu_stoprefreshtimer.png 2KB
menu_add_to_bookmark.png 2KB
menu_delete_bookmark.png 2KB
menu_bookmark_sync_import.png 2KB
menu_bookmark_sync_export.png 2KB
channelgallery_bg.png 2KB
menu_attr.png 2KB
menu_page_attr.png 2KB
menu_refreshtimer.png 2KB
menu_nightmode.png 2KB
icon.png 2KB
menu_syssettings.png 2KB
menu_new_window.png 2KB
menu_help.png 2KB
menu_pagefind.png 2KB
menu_refresh.png 2KB
menu_day.png 2KB
menu_close_window.png 2KB
menu_bookmark.png 2KB
menu_delete_folder.png 2KB
menu_search.png 2KB
menu_auto_landscape.png 2KB
menu_bookmark_sync_sync.png 2KB
controlbar_homepage.png 1KB
menu_sharepage.png 1KB
menu_redownload.png 1KB
menu_clearmainpagedata.png 1KB
menu_about.png 1KB
menu_quit.png 1KB
menu_auto_landscape_closed.png 1KB
menu_rename_folder.png 1KB
menu_open_in_newwindow.png 1KB
menu_copy.png 1KB
menu_input_pick_inputmethod.png 1KB
menu_novel_mode.png 1KB
menu_downmanager.png 1KB
controlbar_menu.png 1KB
menu_delete.png 1KB
menu_page_updown.png 1KB
menu_input_select_word.png 1KB
menu_view_image.png 1KB
共 143 条
- 1
- 2
资源评论
邓凌佳
- 粉丝: 64
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功