package com.lfk.demo; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.support.v7.app.ActionBarActivity; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import com.lfk.demo.Activity.CartoonActivity; import com.lfk.demo.Activity.CodeActivity; import com.lfk.demo.Activity.EditActivity; import com.lfk.demo.Activity.ExplorerActivity; import com.lfk.demo.Activity.NewPaintActivity; import com.lfk.demo.Activity.PaintViewActivity; import com.lfk.demo.Activity.ReadActivity; import com.lfk.demo.Activity.VerTextActivity; import com.lfk.demo.Activity.ViewDemoActivity; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; public class MainActivity extends ActionBarActivity implements View.OnClickListener { private LayoutInflater inflater; private final int BUFFER_SIZE = 400000; public static final String FILE_NAME = "codeview.java"; public static final String READ_FILE_NAME = "exm.txt"; public static final String PACKAGE_NAME = "com.lfk.justwetools"; public static final String FILE_PATH = "/data" + Environment.getDataDirectory().getAbsolutePath() + "/" + PACKAGE_NAME + "/bin"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); inflater = LayoutInflater.from(this); findViewById(R.id.paintview_button).setOnClickListener(this); findViewById(R.id.explorerview_button).setOnClickListener(this); findViewById(R.id.codeview_button).setOnClickListener(this); findViewById(R.id.readerview_button).setOnClickListener(this); findViewById(R.id.markdown_button).setOnClickListener(this); findViewById(R.id.vertextview).setOnClickListener(this); findViewById(R.id.newPaint).setOnClickListener(this); findViewById(R.id.viewDemo).setOnClickListener(this); findViewById(R.id.cartoonDemo).setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.about) { View view = inflater.inflate(R.layout.text_item, null); AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this) .setTitle("关于JustWeTools") .setView(view) .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { } }); builder.show(); return true; } return super.onOptionsItemSelected(item); } public void copytext(String name, int type) { try { File myDataPath = new File(FILE_PATH); if (!myDataPath.exists()) { myDataPath.mkdirs(); } String file = myDataPath + "/" + name; if (!(new File(file).exists())) { InputStream is; if (type == 0) { is = this.getResources().openRawResource(R.raw.codeview); } else { is = this.getResources().openRawResource(R.raw.exm); } FileOutputStream fos = new FileOutputStream(file); byte[] buffer = new byte[BUFFER_SIZE]; int count = 0; while ((count = is.read(buffer)) > 0) { fos.write(buffer, 0, count); } fos.close(); is.close(); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } @Override public void onClick(View v) { Intent intent = new Intent(); switch (v.getId()) { case R.id.paintview_button: intent.setClass(MainActivity.this, PaintViewActivity.class); break; case R.id.explorerview_button: intent.setClass(MainActivity.this, ExplorerActivity.class); break; case R.id.codeview_button: copytext(FILE_NAME, 0); intent.setData(Uri.parse(FILE_PATH + "/" + FILE_NAME)); intent.setClass(MainActivity.this, CodeActivity.class); break; case R.id.readerview_button: copytext(READ_FILE_NAME, 1); intent.setData(Uri.parse(FILE_PATH + "/" + READ_FILE_NAME)); intent.setClass(MainActivity.this, ReadActivity.class); break; case R.id.markdown_button: intent.setClass(MainActivity.this, EditActivity.class); break; case R.id.vertextview: intent.setClass(MainActivity.this, VerTextActivity.class); break; case R.id.newPaint: intent.setClass(MainActivity.this, NewPaintActivity.class); break; case R.id.viewDemo: intent.setClass(MainActivity.this, ViewDemoActivity.class); break; case R.id.cartoonDemo: intent.setClass(MainActivity.this, CartoonActivity.class); break; } startActivity(intent); } }