android程式設計實例入門 -Sample改寫分享 (2014/10/21)

android程式設計實例入門 -Sample改寫分享 (2014/10/21)

android程式設計實例入門 -Sample改寫分享 (2014/10/21)

 

此範例為程式碼(06\Sample05)的改寫,利用一個LinearLayout一個EditText和個Button來實作GUI界面,並透過按紐來控制EditText+TextToSpeech來實現英文發音,程式碼如下所示:

 

 

package com.jashsample;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.Random;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnKeyListener;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Camera;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Typeface;
import android.hardware.Camera.Size;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.text.format.DateFormat;
import android.text.method.KeyListener;
import android.view.Display;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.Surface;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.animation.AnimationSet;
import android.view.animation.RotateAnimation;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.ViewFlipper;
/*
 * 建立1個EditText+1個TextToSpeech和1個按鈕,利用按鈕來控制EditText+TextToSpeech來實現英文發音。
 */
public class MainActivity extends Activity {
EditText et;
Button bt;
TextToSpeech tts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);
setContentView(ll);
et = new EditText(this);
bt = new Button(this);
bt.setText("開始");
ll.addView(et);
ll.addView(bt);
tts = new TextToSpeech(getApplicationContext(), new SampleInitListener());
tts.setLanguage(Locale.ENGLISH);
bt.setOnClickListener(new SampleClickListener());
}
class SampleClickListener implements OnClickListener
{
public void onClick(View v)
{
String str  = et.getText().toString();
if(str != null)
{
tts.speak(str, TextToSpeech.QUEUE_FLUSH, null);
}
}
}
class SampleInitListener implements OnInitListener
{
public void onInit(int status){}
}
}

 


發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *