package com.ztspeech.simutalk2.dictionary.activity;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.AlertDialog;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.drawable.BitmapDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.ClipboardManager;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.PopupWindow;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;
import com.ztspeech.recognizer.OnEngineListener;
import com.ztspeech.recognizerDialog.UnisayRecognizerDialog;
import com.ztspeech.simutalk2.R;
import com.ztspeech.simutalk2.data.TextPlayer;
import com.ztspeech.simutalk2.data.TransTextTable;
import com.ztspeech.simutalk2.data.UserInfo;
import com.ztspeech.simutalk2.dictionary.adapter.KouyiRecordLvAdapter;
import com.ztspeech.simutalk2.dictionary.adapter.KouyiSimpleLvAdapter;
import com.ztspeech.simutalk2.dictionary.dom.SQLiteDom;
import com.ztspeech.simutalk2.dictionary.entity.Collecter;
import com.ztspeech.simutalk2.dictionary.entity.KouyiRecord;
import com.ztspeech.simutalk2.dictionary.util.LogInfo;
import com.ztspeech.simutalk2.dictionary.util.PublicArithmetic;
import com.ztspeech.simutalk2.dictionary.util.Util;
import com.ztspeech.simutalk2.qa.MainActivity;
import com.ztspeech.simutalk2.qa.view.InterpretView;
import com.ztspeech.simutalk2.trans.InterpretActivity;
import com.ztspeech.simutalk2.weibo.EditContent;
import com.ztspeech.simutalk2.weibo.IRenren;
import com.ztspeech.simutalk2.weibo.ISina;
import com.ztspeech.simutalk2.weibo.ITencent;
import com.ztspeech.simutalk2.weibo.Ikaixin;
public class KouyiRecordActivity extends BaseActivity implements OnItemClickListener, TextWatcher, OnClickListener,
OnEngineListener, OnTouchListener {
private EditText edtWord;
private Button btnSearch;
private Intent fromWhere;
private List list = null;
private String strWords;
private ListView lvWords;
private View parent;
private Integer childId;
// private Integer categroyId;
private int page = 1;
private SQLiteDom sqliteDom = null;
private KouyiRecordLvAdapter wLv;
private KouyiSimpleLvAdapter wslv;
private Integer chOrEn = 1;
private ListView lvSimple;
private TextView tvNoResult;
private List<KouyiRecord> newList;
private Button button1;
private Button button2;
private Button button3;
private Button button4;
private Button button5;
private Button button6;
private PopupWindow popAction;
private UserInfo mUser = UserInfo.getInstanse();
private UnisayRecognizerDialog mDialog = null;
private Button btnLuyin = null;
// =========================================================
// private PopupWindow mRecognizerWindow = null;
private InterpretView mInterpretView;
private PopupWindow popMore;
private GridView gdv;
private Handler mHandlerKeyboard = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case Util.ON_RECORD_END:
mInterpretView.clearNoVoiceAnim();
mInterpretView.clearViewAnim();
mInterpretView.startViewAnim();
mInterpretView.setBtnRecordEnable(false);
break;
case Util.ON_RECORD_BEGIN:
mInterpretView.clearViewAnim();
mInterpretView.startNoVoiceAnim();
// btnDispProcess(true);
mInterpretView.setBtnRecordEnable(true);
break;
case Util.ON_RECORDER_ERROR:
mInterpretView.clearViewAnim();
mInterpretView.setBtnRecordEnable(true);
break;
case Util.ON_WAIT_BEGIN:
mInterpretView.setBtnRecordEnable(false);
mInterpretView.clearViewAnim();
mInterpretView.startViewAnim();
break;
case Util.ON_WAIT_END:
mInterpretView.setBtnRecordEnable(true);
// btnDispProcess(false);
mInterpretView.clearViewAnim();
break;
case Util.ON_RECOGNIZER_ERROR:
mInterpretView.clearViewAnim();
mInterpretView.setBtnRecordEnable(true);
mInterpretView.setTextStatusDisp(View.VISIBLE);
mDialog.close();
mInterpretView.setTextStatus((Integer) msg.obj);
break;
case Util.ON_VOICE_VALUE:
mInterpretView.clearViewAnim();
mInterpretView.setBtnRecordEnable(false);
int value = (Integer) msg.obj;
mInterpretView.setBtnRecordBg(value);
break;
case Util.SET_LIST_VIEW:
mInterpretView.setBtnRecordEnable(true);
mInterpretView.clearViewAnim();
mDialog.close();
mInterpretView.dispRresultList((ArrayList<String>) msg.obj);
break;
case Util.SELECT_RESULT:
break;
default:
break;
}
}
};
private void btnDispProcess(boolean flag) {
if (flag) {
mInterpretView.setBtnCancelDisp(View.VISIBLE);
} else {
mInterpretView.setBtnCancelDisp(View.GONE);
}
}
private boolean btnClickflag = false;
// =========================================================
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (MainActivity.iSina != null) {
MainActivity.iSina.setClass();
}
if (MainActivity.iRenren != null) {
MainActivity.iRenren.setClass();
}
if (MainActivity.iTencent != null) {
MainActivity.iTencent.setClass();
}
if (MainActivity.ikaixin != null) {
MainActivity.ikaixin.setClass();
}
MainActivity.ikaixin = Ikaixin.getInstance(this);
MainActivity.ikaixin.init(this);
MainActivity.iSina = ISina.getInstance(this);
MainActivity.iSina.init();
MainActivity.iRenren = IRenren.getInstance(this);
MainActivity.iRenren.init(this);
MainActivity.iTencent = ITencent.getInstance(this);
MainActivity.iTencent.init();
sqliteDom = new SQLiteDom();
fromWhere = getIntent();
registerBoradcastReceiver();
parent = getLayoutInflater().inflate(R.layout.activity_kouyirecord, null);
mInterpretView = new InterpretView(this, mHandlerKeyboard, this);
mDialog = new UnisayRecognizerDialog(this, "", this, mInterpretView.mNewRecognizerViewListenerInterface);
childId = fromWhere.getIntExtra("childId", 0);
setTitleAndContentView(R.layout.activity_kouyirecord, "�����¼");
edtWord = (EditText) findViewById(R.id.edtInputWords);
lvWords = (ListView) findViewById(R.id.lvCategroy);
btnSearch = (Button) findViewById(R.id.btnSearch);
btnSearch.setOnClickListener(this);
list = new ArrayList();
getRecordList();
wLv = new KouyiRecordLvAdapter(this, list, childId, parent);
// wLv.addFooter(lvWords);
lvWords.setAdapter(wLv);
lvWords.setOnItemClickListener(this);
edtWord.addTextChangedListener(this);
edtWord.setOnTouchListener(this);
btnLuyin = (Button) findViewById(R.id.btnLuyin);
btnLuyin.setOnClickListener(this);
tvNoResult = (TextView) findViewById(R.id.tvNoResult);
tvNoResult.setText(getResources().getString(R.string.dictionary_noresult));
lvSimple = (ListView) findViewById(R.id.lvSimple);
lvSimple.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edtWord.getWindowToken(), 0);
lvSimple.setVisibility(View.GONE);
lvWords.setVisibility(View.VISIBLE);
list.clear();
list.add(newList.get(position));
wLv.notifyDataSetChanged();
}
});
}
public void setTitleAndContentView(int layout, String title) {
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(layout);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar);
tvTitle = (TextView) findViewById(R.id.tvTitle);
tvTitle.setText(title);
btnCancle = (ImageButton) findViewById(R.id.btnLeft);
btnCancle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String str = edtWord.getText().toString();
if (str.equals("")) {
KouyiRecordActivity.this.finish();
} else {
edtWord.setText("");
}
}
});
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// if (arg2 == list.size()) {
// page++;
// int count1 = list.size();
// getRecordList();
// int count2 = list.size();
// if (count1 == count2) {
// wLv.removeFooter(lvWords);
// }
// wLv.notifyDataSetChanged();
// }
// Intent intent = new
// Intent(KouyiRecordActivity.this,ShowWhiteBordActivity.class);
// intent.putExtra("chinese", ((KouyiRecord)list.get(arg2)).getSaid());
// intent.putExtra("english",
// ((KouyiRecord)list.get(arg2)).getTranslated());
// intent.putExtra("chOrEn", chOrEn);
// startActivity(intent);
}
public void setChOrEN(String str) {
chOrEn = new PublicArithmetic().isWhat(str);
}
public void getRecordList() {
strWords = edtWord.getText().toString().trim();
List newList;
if (page == 1) {
newList = sqliteDom.getSimilarResultInKouyi(strWords, page);
list.clear();
list.addAll(newList);
} else {
newList = sqliteDom.getSimilarResultInKouyi(strWords, page);
list.addAll(newList);
}
}
public void getRecordListAfterDelete() {
page = 1;
strWords = edtWord.getText().toString().trim();
List newList;
newList = sqliteDom.getSimilarResultInKouyi(strWords, page);
list.clear();
list.addAll(newList);
}
@Override
public void onClick(View v) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
switch (v.getId()) {
case R.id.btnLuyin:
imm.hideSoftInputFromWindow(edtWord.getWindowToken(), 0);
if (mUser.s2sType.equals(UserInfo.S2T_CH2EN)) {
mDialog.setToChineseEngine();
} else if (mUser.s2sType.equals(UserInfo.S2T_EN2CH)) {
mDialog.setToEnglishEngine();
}
mInterpretView.showPopWindowLocation();
mDialog.show();
// new AlertDialog.Builder(this).setTitle("ѡ��ʶ��ʽ").setItems(
// new String[] { "����", "Ӣ��" }, new
// DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog, int which) {
// switch(which){
// case 0:
// mDialog.setToChineseEngine();
// mDialog.show();
// break;
// case 1:
// mDialog.setToEnglishEngine();
// mDialog.show();
// break;
// }
//
// }
// }).setNegativeButton(
// null, null).show();
break;
case R.id.btn_cancel:
mDialog.onRecognizerViewCancel();
mInterpretView.dismissPopWindow();
break;
case R.id.btn_bg:
case R.id.imagenovoiceanim:
mDialog.onRecognizerViewRecord();
LogInfo.LogOutE("haitian", "---------------stop record------------");
break;
case R.id.btn_record:
if (!btnClickflag) {
btnClickflag = true;
mDialog.show();
mInterpretView.setBtnRecordEnable(true);
} else {
btnClickflag = false;
mDialog.close();
mInterpretView.dismissPopWindow();
}
break;
case R.id.btnSearch:
strWords = edtWord.getText().toString().trim();
if (!"".equals(strWords) && strWords != null) {
imm.hideSoftInputFromWindow(edtWord.getWindowToken(), 0);
page = 1;
// wLv.removeFooter(lvWords);
getRecordList();
wLv.notifyDataSetChanged();
// wLv.addFooter(lvWords);
lvSimple.setVisibility(View.GONE);
lvWords.setVisibility(View.VISIBLE);
} else {
Toast.makeText(KouyiRecordActivity.this, "��������������", Toast.LENGTH_SHORT).show();
}
break;
}
if (list == null || list.size() == 0) {
tvNoResult.setVisibility(View.VISIBLE);
} else {
tvNoResult.setVisibility(View.GONE);
}
}
public void registerBoradcastReceiver() {
IntentFilter myIntentFilter = new IntentFilter();
myIntentFilter.addAction(Util.ACTION_POMENU);
registerReceiver(receivePopMenuEvent, myIntentFilter);
}
public BroadcastReceiver receivePopMenuEvent = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Util.ACTION_POMENU)) {
// showActionPop((KouyiRecord)
// intent.getParcelableExtra("kouyi"),intent.getIntExtra("button",
// 0));
// showDialogMenu((KouyiRecord)
// intent.getParcelableExtra("kouyi"),
// intent.getIntExtra("button", 0));
showPopMore((KouyiRecord) intent.getParcelableExtra("kouyi"));
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edtWord.getWindowToken(), 0);
}
}
};
public void initPopMenu(View view) {
button1 = (Button) view.findViewById(R.id.button1);
button1.setText("�� ��");
button2 = (Button) view.findViewById(R.id.button2);
button2.setText("��ӵ��ղ�");
button3 = (Button) view.findViewById(R.id.button3);
button3.setText("�� ��");
button4 = (Button) view.findViewById(R.id.button4);
button4.setText("ɾ ��");
button5 = (Button) view.findViewById(R.id.button5);
button5.setText("ɾ��ȫ��");
button6 = (Button) view.findViewById(R.id.button6);
button6.setText("ȡ ��");
}
public void showDialogMenu(KouyiRecord kouyi, final int buttonNo) {
final Integer recordId = kouyi.getRecordId();
final KouyiRecord kk = kouyi;
AlertDialog.Builder builder = new AlertDialog.Builder(KouyiRecordActivity.this);
CharSequence[] items = new CharSequence[6];
int i = 0;
items[i++] = getResources().getString(R.string.trans_share_fullscreen);
items[i++] = getResources().getString(R.string.trans_share_send);
items[i++] = getResources().getString(R.string.trans_share_copy);
items[i++] = getResources().getString(R.string.trans_share_collect);
items[i++] = getResources().getString(R.string.trans_share_delete);
items[i++] = getResources().getString(R.string.trans_share_clear);
builder.setTitle("ѡ��");
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
switch (item) {
case 0:
Intent intent = new Intent(KouyiRecordActivity.this, ShowWhiteBordActivity.class);
intent.putExtra("chinese", kk.getSaid());
intent.putExtra("english", kk.getTranslated());
intent.putExtra("chOrEn", chOrEn);
startActivity(intent);
break;
case 1:
switch (buttonNo) {
case 1:
sendSMS(kk.getSaid() + "\n" + kk.getTranslated());
break;
case 2:
sendSMS(kk.getTranslated());
break;
}
break;
case 3:
Collecter collecter = new Collecter();
collecter.setChildId(6);
collecter.setText1(kk.getSaid());
collecter.setText2(kk.getTranslated());
int result = sqliteDom.insertCollecterFromKouyi(collecter);
switch (result) {
case 0:
// Toast.makeText(KouyiRecordActivity.this, "�Ѽ����ղؼ�",
// Toast.LENGTH_LONG).show();
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("�Ѽ����ղؼ�")
.setPositiveButton("ȷ��", null).show();
break;
default:
Toast.makeText(KouyiRecordActivity.this, "��ӳɹ�", Toast.LENGTH_SHORT).show();
// new
// AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("��ӳɹ�")
// .setPositiveButton("ȷ��", null).show();
}
break;
case 2:
switch (buttonNo) {
case 1:
shareText(kk.getSaid() + "\n" + kk.getTranslated());
break;
case 2:
shareText(kk.getTranslated());
break;
}
break;
case 4:
int index = sqliteDom.deleteRecordByIdReturnIndex(recordId);
// TransTextTable mTableTransText =
// MainActivity.mTableTransText;
// mTableTransText.deleteByText(kk.getSaid(), index);
getRecordListAfterDelete();
wLv.notifyDataSetChanged();
InterpretActivity.setIsDeletefromMyLiberaryTrue();
break;
case 5:
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle("ɾ��ȫ������").setView(null)
.setPositiveButton("ȷ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
TransTextTable mTableTransText2 = MainActivity.mTableTransText;
sqliteDom.deleteAllRecord();
list.clear();
wLv.notifyDataSetChanged();
mTableTransText2.clear();
}
}).setNegativeButton("ȡ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
}).show();
break;
}
}
});
AlertDialog alert = builder.create();
alert.show();
}
public void showActionPop(KouyiRecord kouyi, final int buttonNo) {
final Integer recordId = kouyi.getRecordId();
final KouyiRecord kk = kouyi;
View view = LayoutInflater.from(this).inflate(R.layout.pop_actionmenu, null);
initPopMenu(view);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
switch (buttonNo) {
case 1:
sendSMS(kk.getSaid());
break;
case 2:
sendSMS(kk.getTranslated());
break;
}
}
});
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
switch (buttonNo) {
case 1:
shareText(kk.getSaid());
break;
case 2:
shareText(kk.getTranslated());
break;
}
}
});
button6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
}
});
button5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle("ɾ��ȫ������").setView(null)
.setPositiveButton("ȷ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
sqliteDom.deleteAllRecord();
list.clear();
wLv.notifyDataSetChanged();
}
}).setNegativeButton("ȡ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
}).show();
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
Collecter collecter = new Collecter();
collecter.setChildId(6);
collecter.setText1(kk.getSaid());
collecter.setText2(kk.getTranslated());
int result = sqliteDom.insertCollecterFromKouyi(collecter);
switch (result) {
case 0:
// Toast.makeText(KouyiRecordActivity.this, "�Ѽ����ղؼ�",
// Toast.LENGTH_LONG).show();
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("�Ѽ����ղؼ�")
.setPositiveButton("ȷ��", null).show();
break;
default:
Toast.makeText(KouyiRecordActivity.this, "��ӳɹ�", Toast.LENGTH_SHORT).show();
// new
// AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("��ӳɹ�")
// .setPositiveButton("ȷ��", null).show();
}
}
});
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popAction.dismiss();
sqliteDom.deleteRecordById(recordId);
getRecordListAfterDelete();
wLv.notifyDataSetChanged();
}
});
popAction = new PopupWindow(view, LayoutParams.FILL_PARENT, getResources().getDimensionPixelSize(
R.dimen.actionmenu_hight_2));
// BitmapDrawable bg = (BitmapDrawable)
// getResources().getDrawable(R.drawable.no2_popbg);
popAction.setBackgroundDrawable(new BitmapDrawable());
popAction.setAnimationStyle(R.style.PopupAnimation);
popAction.showAtLocation(parent, Gravity.BOTTOM, 0, 0);
popAction.setFocusable(true);
popAction.setOutsideTouchable(false);
popAction.update();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
mDialog.close();
mInterpretView.dismissPopWindow();
}
return super.onKeyDown(keyCode, event);
}
@Override
protected void onDestroy() {
unregisterReceiver(receivePopMenuEvent);
super.onDestroy();
}
@Override
public void onEngineEnd() {
// TODO Auto-generated method stub
}
@Override
public void onEngineResult(List arg0, int arg1, String id) {
mDialog.close();
mInterpretView.dismissPopWindow();
if (arg0 == null) {
return;
}
if (arg0.size() > 0) {
String text = (String) ((String) arg0.get(0)).replace(".", "").replace("��", "").replace("?", "")
.replace("��", "").replace("!", "").replace("��", "");
edtWord.setText(text);
}
}
@Override
public void onEngineStart() {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
strWords = edtWord.getText().toString().trim();
if (!"".equals(strWords) && strWords != null) {
lvWords.setVisibility(View.GONE);
lvSimple.setVisibility(View.VISIBLE);
page = 1;
strWords = edtWord.getText().toString().trim();
if (page == 1) {
newList = sqliteDom.getSimilarResultInKouyi(strWords, page);
} else {
newList = sqliteDom.getSimilarResultInKouyi(strWords, page);
}
wslv = new KouyiSimpleLvAdapter(this, newList, new PublicArithmetic().isWhat(strWords));
lvSimple.setAdapter(wslv);
if (newList == null || newList.size() == 0) {
tvNoResult.setVisibility(View.VISIBLE);
} else {
tvNoResult.setVisibility(View.GONE);
}
} else {
imm.hideSoftInputFromWindow(edtWord.getWindowToken(), 0);
lvSimple.setVisibility(View.GONE);
lvWords.setVisibility(View.VISIBLE);
page = 1;
getRecordList();
wLv.notifyDataSetChanged();
if (list == null || list.size() == 0) {
tvNoResult.setVisibility(View.VISIBLE);
} else {
tvNoResult.setVisibility(View.GONE);
}
}
}
ArrayList<Map<String, Object>> functionList = null;
public void initPopMore(View view) {
functionList = new ArrayList<Map<String, Object>>();
gdv = (GridView) view.findViewById(R.id.gdv);
// final RelativeLayout rlbg = (RelativeLayout)
// view.findViewById(R.id.rlBg);
// // rlbg.setVisibility(View.VISIBLE);
// rlbg.setOnClickListener(new View.OnClickListener() {
//
// @Override
// public void onClick(View v) {
// // rlbg.setVisibility(View.INVISIBLE);
// popMore.dismiss();
// }
// });
Map<String, Object> m0 = new HashMap<String, Object>();
m0.put("textItem", "");
m0.put("iconItem", R.drawable.trans_ci_pop_button_01);
m0.put("action", 0);
functionList.add(m0);
Map<String, Object> m1 = new HashMap<String, Object>();
m1.put("textItem", "");
m1.put("iconItem", R.drawable.trans_ci_pop_button_02);
m1.put("action", 1);
functionList.add(m1);
Map<String, Object> m2 = new HashMap<String, Object>();
m2.put("textItem", "");
m2.put("iconItem", R.drawable.trans_ci_pop_button_03);
m2.put("action", 2);
functionList.add(m2);
Map<String, Object> m3 = new HashMap<String, Object>();
m3.put("textItem", "");
m3.put("iconItem", R.drawable.trans_ci_pop_button_04);
m3.put("action", 3);
functionList.add(m3);
Map<String, Object> m4 = new HashMap<String, Object>();
m4.put("textItem", "");
m4.put("iconItem", R.drawable.trans_ci_pop_button_05);
m4.put("action", 4);
functionList.add(m4);
Map<String, Object> m5 = new HashMap<String, Object>();
m5.put("textItem", "");
m5.put("iconItem", R.drawable.trans_ci_pop_button_06);
m5.put("action", 5);
functionList.add(m5);
Map<String, Object> m6 = new HashMap<String, Object>();
m6.put("textItem", "");
m6.put("iconItem", R.drawable.trans_ci_pop_button_12);
m6.put("action", 6);
functionList.add(m6);
Map<String, Object> m7 = new HashMap<String, Object>();
m7.put("textItem", "");
m7.put("iconItem", R.drawable.trans_ci_pop_button_07);
m7.put("action", 7);
functionList.add(m7);
Map<String, Object> m8 = new HashMap<String, Object>();
m8.put("textItem", "");
m8.put("iconItem", R.drawable.trans_ci_pop_button_08);
m8.put("action", 8);
functionList.add(m8);
Map<String, Object> m9 = new HashMap<String, Object>();
m9.put("textItem", "");
m9.put("iconItem", R.drawable.trans_ci_pop_button_09);
m9.put("action", 9);
functionList.add(m9);
Map<String, Object> m10 = new HashMap<String, Object>();
m10.put("textItem", "");
m10.put("iconItem", R.drawable.trans_ci_pop_button_10);
m10.put("action", 10);
functionList.add(m10);
Map<String, Object> m11 = new HashMap<String, Object>();
m11.put("textItem", "");
m11.put("iconItem", R.drawable.trans_ci_pop_button_11);
m11.put("action", 11);
functionList.add(m11);
SimpleAdapter sa = new SimpleAdapter(KouyiRecordActivity.this, functionList, R.layout.gdv_interpret_item,
new String[] { "textItem", "iconItem" }, new int[] { R.id.tvFunction, R.id.imageFunction });
gdv.setAdapter(sa);
}
public void showPopMore(KouyiRecord kouyi) {
final Integer recordId = kouyi.getRecordId();
final KouyiRecord kk = kouyi;
View view = LayoutInflater.from(this).inflate(R.layout.pop_interpret_more, null);
initPopMore(view);
gdv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
switch (Integer.parseInt(functionList.get(arg2).get("action").toString())) {
case 0:
popMore.dismiss();
Uri smsToUri = Uri.parse("smsto:");// ��ϵ�˵�ַ
Intent mIntent = new Intent(android.content.Intent.ACTION_SENDTO, smsToUri);
mIntent.putExtra("sms_body", kk.getSaid() + "\n" + kk.getTranslated());// ��������
startActivity(mIntent);
break;
case 1:
popMore.dismiss();
Intent mailIntent = new Intent(android.content.Intent.ACTION_SEND);
mailIntent.setType("plain/test");
mailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, "");
mailIntent.putExtra(android.content.Intent.EXTRA_CC, "");
mailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "");
mailIntent.putExtra(android.content.Intent.EXTRA_TEXT, kk.getSaid() + "\n" + kk.getTranslated());
startActivity(Intent.createChooser(mailIntent, "�����ʼ�"));
break;
// case 2:
// popMore.dismiss();
// showPopEditWC(kk.getSaid() + "\n" + kk.getTranslated(), Integer.parseInt(functionList.get(arg2).get("action").toString()));
//// MainActivity.iSina.sendWeibo(kk.getSaid() + "\n" + kk.getTranslated(), KouyiRecordActivity.this);
// break;
// case 3:
// popMore.dismiss();
// showPopEditWC(kk.getSaid() + "\n" + kk.getTranslated(), Integer.parseInt(functionList.get(arg2).get("action").toString()));
//// MainActivity.iTencent.sendWeibo(kk.getSaid() + "\n" + kk.getTranslated(), KouyiRecordActivity.this);
// break;
// case 4:
// popMore.dismiss();
// showPopEditWC(kk.getSaid() + "\n" + kk.getTranslated(), Integer.parseInt(functionList.get(arg2).get("action").toString()));
//// MainActivity.iRenren.sendWeibo(kk.getSaid() + "\n" + kk.getTranslated(), KouyiRecordActivity.this);
// break;
// case 5:
// popMore.dismiss();
// showPopEditWC(kk.getSaid() + "\n" + kk.getTranslated(), Integer.parseInt(functionList.get(arg2).get("action").toString()));
//// MainActivity.ikaixin.sendWeibo(kk.getSaid() + "\n" + kk.getTranslated(), KouyiRecordActivity.this);
// break;
case 2:
case 3:
case 4:
case 5:
popMore.dismiss();
Intent intentW = new Intent(KouyiRecordActivity.this,EditContent.class);
intentW.putExtra("action", Integer.parseInt(functionList.get(arg2).get("action").toString()));
intentW.putExtra("content", kk.getSaid() + "\n" + kk.getTranslated());
startActivityForResult(intentW, 000011);
break;
case 6:
popMore.dismiss();
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
clipboard.setText(kk.getSaid() + "\n" + kk.getTranslated());
break;
case 7:
popMore.dismiss();
Intent intent = new Intent(KouyiRecordActivity.this, ShowWhiteBordActivity.class);
intent.putExtra("chinese", kk.getSaid());
intent.putExtra("english", kk.getTranslated());
intent.putExtra("chOrEn", chOrEn);
startActivity(intent);
break;
case 8:
popMore.dismiss();
Collecter collecter = new Collecter();
collecter.setChildId(6);
collecter.setText1(kk.getSaid());
collecter.setText2(kk.getTranslated());
int result = sqliteDom.insertCollecterFromKouyi(collecter);
switch (result) {
case 0:
// Toast.makeText(KouyiRecordActivity.this, "�Ѽ����ղؼ�",
// Toast.LENGTH_LONG).show();
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("�Ѽ����ղؼ�")
.setPositiveButton("ȷ��", null).show();
break;
default:
Toast.makeText(KouyiRecordActivity.this, "��ӳɹ�", Toast.LENGTH_SHORT).show();
// new
// AlertDialog.Builder(KouyiRecordActivity.this).setTitle(null).setMessage("��ӳɹ�")
// .setPositiveButton("ȷ��", null).show();
}
break;
case 9:
popMore.dismiss();
// shareText();
sendSMS(kk.getSaid() + "\n" + kk.getTranslated());
break;
case 10:
popMore.dismiss();
// deleteSelected(position);
int index = sqliteDom.deleteRecordByIdReturnIndex(recordId);
getRecordListAfterDelete();
wLv.notifyDataSetChanged();
InterpretActivity.setIsDeletefromMyLiberaryTrue();
break;
case 11:
popMore.dismiss();
// mSpeakAdapter.clear();
// updateListView();
new AlertDialog.Builder(KouyiRecordActivity.this).setTitle("ɾ��ȫ������").setView(null)
.setPositiveButton("ȷ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
TransTextTable mTableTransText2 = MainActivity.mTableTransText;
sqliteDom.deleteAllRecord();
list.clear();
wLv.notifyDataSetChanged();
mTableTransText2.clear();
}
}).setNegativeButton("ȡ��", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
}).show();
break;
}
}
});
popMore = new PopupWindow(view, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
popMore.setBackgroundDrawable(new BitmapDrawable());
popMore.setAnimationStyle(R.style.popMoreAnimation);
popMore.showAtLocation(findViewById(R.id.interpret_parent), Gravity.CENTER, 0, 0);
popMore.setFocusable(true);
popMore.setOutsideTouchable(false);
popMore.update();
}
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
edtWord.setText(strWords);
}
return false;
}
@Override
protected void onStop() {
if(TextPlayer.getInstance().isPlaying()){
TextPlayer.getInstance().stop();
}
super.onStop();
}
////�������ݱ༭��
// private PopupWindow popEdit;
// private EditText edtContent;
// private Button btnSend2;
// private Button btnCancle2;
// private TextView tvCount;
// private int count = 140;
// public void initPopEditWC(View view){
// edtContent = (EditText) view.findViewById(R.id.edtContent);
// btnSend2 = (Button) view.findViewById(R.id.btnSend);
// btnCancle2 = (Button) view.findViewById(R.id.btnCancle);
// tvCount = (TextView) view.findViewById(R.id.tvCount);
// edtContent.setMaxEms(count);
// }
// public String showPopEditWC(String str,final int a){
//
// View view = LayoutInflater.from(this).inflate(R.layout.pop_editweibocontent, null);
// initPopEditWC(view);
// edtContent.setText(str);
// tvCount.setText((count-str.length())+"/"+count);
// edtContent.addTextChangedListener(new TextWatcher() {
// @Override
// public void onTextChanged(CharSequence s, int start, int before, int count) {
// // TODO Auto-generated method stub
//
// }
//
// @Override
// public void beforeTextChanged(CharSequence s, int start, int count,
// int after) {
//
//
// }
//
// @Override
// public void afterTextChanged(Editable s) {
// tvCount.setText((count-edtContent.getText().toString().length())+"/"+count);
//
// }
// });
// btnSend2.setOnClickListener(new View.OnClickListener() {
//
// @Override
// public void onClick(View v) {
// popEdit.dismiss();
// switch(a){
// case 2:
// MainActivity.iSina.sendWeibo(edtContent.getText().toString().trim(),
// KouyiRecordActivity.this);
// break;
// case 3:
// MainActivity.iTencent.sendWeibo(edtContent.getText().toString().trim(),
// KouyiRecordActivity.this);
// break;
// case 4:
// MainActivity.iRenren.sendWeibo(edtContent.getText().toString().trim(),
// KouyiRecordActivity.this);
// break;
// case 5:
// MainActivity.ikaixin.sendWeibo(edtContent.getText().toString().trim(),
// KouyiRecordActivity.this);
// break;
// }
//
// }
// });
// btnCancle2.setOnClickListener(new View.OnClickListener() {
//
// @Override
// public void onClick(View v) {
// popEdit.dismiss();
//
// }
// });
// popEdit = new PopupWindow(view, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
// popEdit.setBackgroundDrawable(new BitmapDrawable());
// popEdit.showAtLocation(findViewById(R.id.interpret_parent), Gravity.CENTER, 0, 0);
// popEdit.setFocusable(true);
// popEdit.setOutsideTouchable(false);
// popEdit.update();
// return null;
// }
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==resultCode&&resultCode==000011){
int a = data.getIntExtra("action", 0);
String str = data.getStringExtra("content");
switch(a){
case 2:
MainActivity.iSina.sendWeibo(str,
KouyiRecordActivity.this);
break;
case 3:
MainActivity.iTencent.sendWeibo(str,
KouyiRecordActivity.this);
break;
case 4:
MainActivity.iRenren.sendWeibo(str,
KouyiRecordActivity.this);
break;
case 5:
MainActivity.ikaixin.sendWeibo(str,
KouyiRecordActivity.this);
break;
case 0:
Util.showToast(this, "���ʹ���");
break;
}
}
}
}