diff --git a/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java index b380df7..abdc815 100644 --- a/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java +++ b/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java @@ -57,11 +57,15 @@ import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.EditText; +import android.widget.ImageButton; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; +import android.speech.tts.TextToSpeech; +import android.speech.tts.TextToSpeech.OnInitListener; + import net.micode.notes.R; import net.micode.notes.data.Notes; import net.micode.notes.data.Notes.TextNote; @@ -88,6 +92,8 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; + + public class NoteEditActivity extends Activity implements OnClickListener, NoteSettingChangedListener, OnTextViewChangeListener { public static final int LOCATION_CODE = 301; @@ -103,6 +109,8 @@ public class NoteEditActivity extends Activity implements OnClickListener, public ImageView ibSetBgColor; public ImageView startDraw; + + public ImageButton note_Read; } private static final Map sBgSelectorBtnsMap = new HashMap(); @@ -174,8 +182,11 @@ public class NoteEditActivity extends Activity implements OnClickListener, private LinearLayout mEditTextList; private String mUserQuery; + private Pattern mPattern; + private TextToSpeech mTTS; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -398,7 +409,14 @@ public class NoteEditActivity extends Activity implements OnClickListener, mNoteHeaderHolder.ivAlertIcon = (ImageView) findViewById(R.id.iv_alert_icon); mNoteHeaderHolder.tvAlertDate = (TextView) findViewById(R.id.tv_alert_date); mNoteHeaderHolder.ibSetBgColor = (ImageView) findViewById(R.id.btn_set_bg_color); - mNoteHeaderHolder.startDraw = (ImageView) findViewById(R.id.imageButton2); + mNoteHeaderHolder.startDraw = (ImageButton) findViewById(R.id.imageButton2); + mNoteHeaderHolder.note_Read = (ImageButton) findViewById(R.id.menu_note_read); + mNoteHeaderHolder.note_Read.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View view) { + readText(); + } + }); mNoteHeaderHolder.ibSetBgColor.setOnClickListener(this); mNoteHeaderHolder.startDraw.setOnClickListener(new OnClickListener() { @Override @@ -437,11 +455,27 @@ public class NoteEditActivity extends Activity implements OnClickListener, mFontSizeId = ResourceParser.BG_DEFAULT_FONT_SIZE; } mEditTextList = (LinearLayout) findViewById(R.id.note_edit_list); + + mTTS = new TextToSpeech(this, new OnInitListener() { + @Override + public void onInit(int i) { + if (i == TextToSpeech.SUCCESS){ + int result = mTTS.setLanguage(Locale.US); + if (result != TextToSpeech.LANG_COUNTRY_AVAILABLE + && result != TextToSpeech.LANG_AVAILABLE){ + //Toast.makeText(NoteEditActivity.this,"暂不支持此种语言", Toast.LENGTH_LONG); + return; + } + } + } + }); } @Override protected void onPause() { super.onPause(); + + //Log.i(TAG, "onPause: 11111111111111111111111111111111111"); if(saveNote()) { Log.d(TAG, "Note data was saved with length:" + mWorkingNote.getContent().length()); } @@ -640,6 +674,11 @@ public class NoteEditActivity extends Activity implements OnClickListener, }); } + public void readText(){ + mTTS.speak(mNoteEditor.getText().toString(), TextToSpeech.QUEUE_FLUSH, null); + } + + @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { @@ -684,6 +723,7 @@ public class NoteEditActivity extends Activity implements OnClickListener, break; case R.id.menu_private_folder: moveToPrivateFolder(); + break; default: break; } diff --git a/src/Notes1/app/src/main/res/layout/note_edit.xml b/src/Notes1/app/src/main/res/layout/note_edit.xml index 440a0d5..01a29f5 100644 --- a/src/Notes1/app/src/main/res/layout/note_edit.xml +++ b/src/Notes1/app/src/main/res/layout/note_edit.xml @@ -34,13 +34,27 @@ + + + + - - + + android:textAppearance="@style/TextAppearancePrimaryItem" /> + android:layout_height="wrap_content" + android:layout_gravity="top|right" + android:background="@drawable/bg_color_btn_mask" />