怎么可以删除微信死粉:安卓小程序——带背景音乐,多功能实现

来源:百度文库 编辑:中财网 时间:2024/04/29 23:32:52
这是程序实现了简单的一些功能,包括窗口之间的跳转,和按钮,菜单和消息提示框的实现,还实现了添加和播放mp3音乐,画大小不断变化的矩形和变化的同心圆,并统计它们的个数,下面只是部分.java文件的代码,实现程序还要添加和更改相应的.XML文件,实现Android仿真器启用SD存储卡,以及使用命令adb+push上载文件到SD存储卡等步骤。

//这是mainactivity

package com.eoeAndroid.activity;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class ActivityMain extends Activity {  //主类,也是主窗体界面

  OnClickListener listener1 = null;

  OnClickListener listener2 = null;         //定义两个监听

  Button button1;

  Button button2;                           //定义两个按钮,用于跳转到其它界面

  static final int REQUEST_CODE = 1;

    public void onCreate(Bundle savedInstanceState) {

         super.onCreate(savedInstanceState);

         listener1 = new OnClickListener() {

                public void onClick(View v) {

                       Intent intent1 = new Intent(ActivityMain.this,Activity1.class);

                       intent1.putExtra("activityMain", "有主窗体跳来");

                       startActivityForResult(intent1, REQUEST_CODE);

                }

         };

         listener2 = new OnClickListener() {

                public void onClick(View v) {

                       setTitle("主窗体");

                       Intent intent2 = new Intent(ActivityMain.this, Activity2.class);

                       startActivity(intent2);

                }

         };

         setContentView(R.layout.main);

         button1 = (Button) findViewById(R.id.button1);

         button1.setOnClickListener(listener1);

         button2 = (Button) findViewById(R.id.button2);

         button2.setOnClickListener(listener2);

         setTitle("ActivityMain");

  }

}

 

 

//这是activity1

package com.eoeAndroid.activity;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.content.Intent;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

import android.widget.Toast;

public class Activity1 extends Activity {

  //添加三个菜单事件

    public boolean onCreateOptionsMenu(Menu menu) {  

           menu.add(0,1,2,"显示字幕").setIcon(android.R.drawable.ic_menu_today);

           menu.add(0, 2, 1, "提示框");

           menu.add(0, 3, 3, "播放mp3");

           return super.onCreateOptionsMenu(menu);

        }

 public boolean onOptionsItemSelected(MenuItem item) {

          int item_id = item.getItemId();

          switch (item_id) {

          case 1: 

                  TextView k = new TextView(this);

           k.setText("hevinn is a good studentwelcome to myhometown.");

           setContentView(k);

                  Toast.makeText(this,"点击菜单2",Toast.LENGTH_SHORT).show();  

           break;

          case 2:             //通过一个提示框来向用户提示下一步操作

                  Toast.makeText(this,"关闭菜单",Toast.LENGTH_SHORT).show();

                  new AlertDialog.Builder(this)

                 .setTitle("提示")

                 .setMessage("确定退出?")

                 //.setIcon(R.drawable.quit)

                 .setPositiveButton("确定", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int whichButton) {

             setResult(RESULT_OK);//确定按钮事件

             finish();

            }

                 })

                 .setNegativeButton("取消", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int whichButton) {

            }

                 })

                 .show();        //取消按钮事件

           break;

          case 3:

                  startActivity(new Intent(Activity1.this,mp3.class));//通过菜单三跳转到音乐播放

                  TextView k1 = new TextView(this);

           k1.setText("执行完");

           setContentView(k1);

          }

          return true;

         }

 //下面是按钮事件

 OnClickListener listener1 = null;

  Button button1;

 public void onCreate(Bundle savedInstanceState) {

     super.onCreate(savedInstanceState);

     setContentView(R.layout.activity1);

     listener1 = new OnClickListener() {

                public void onClick(View v) {

                       Bundle bundle = new Bundle();

                       bundle.putString("store", "数据来自Activity1");

                       Intent mIntent = new Intent();

                       mIntent.putExtras(bundle);

                       setResult(RESULT_OK, mIntent);

                       finish();

                }

         };

         button1 = (Button) findViewById(R.id.button3);

         button1.setOnClickListener(listener1);

         String data=null;

          Bundle extras = getIntent().getExtras();

          if (extras != null) {

               data = extras.getString("activityMain");

          }

         setTitle("窗体1"+data);

 }

}

 

 

//这是activity2

package com.eoeAndroid.activity;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class Activity2 extends Activity {

  OnClickListener listener = null;

  Button button;

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity2);

        listener = new OnClickListener() {

                public void onClick(View v) {

                       finish();

                }

         };

         button = (Button) findViewById(R.id.button4);

         button.setOnClickListener(listener);

         setTitle("窗体2");

         //跳转到画图界面

         startActivity(new Intent(Activity2.this,touch.class));

    }

}

 

 

//这是mp3

package com.eoeAndroid.activity;

import java.io.File;

import java.io.FilenameFilter;

import java.util.ArrayList;

import java.util.List;

import android.app.ListActivity;

import android.os.Bundle;

import android.util.Log;

import android.widget.ArrayAdapter;

class Mp3Filter implements FilenameFilter {

    public boolean accept(File dir, String name) {

        return (name.endsWith(".mp3"));

    }

}

public class mp3 extends ListActivity {

 private static final String MEDIA_PATH = new String("/sdcard/");

 private List songs = new ArrayList();

 public void onCreate(Bundle icicle) {

        try {

         super.onCreate(icicle);

         setContentView(R.layout.songlist);

         updateSongList();

        } catch (NullPointerException e) {

         Log.v(getString(R.string.app_name), e.getMessage());

        }

    }

    public void updateSongList() {

     File home = new File(MEDIA_PATH);

  if (home.listFiles( new Mp3Filter()).length > 0) {

      for (File file : home.listFiles( new Mp3Filter())) {

       songs.add(file.getName());

      }

      ArrayAdapter songList = new ArrayAdapter(this,R.layout.song_item,songs);

      setListAdapter(songList);

  }    

    }}

 

 

//这是touch画图类

package com.eoeAndroid.activity;

import android.app.Activity;

import android.content.Context;

import android.graphics.Bitmap;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Paint;

import android.graphics.Rect;

import android.os.Bundle;

import android.util.DisplayMetrics;

import android.view.MotionEvent;

import android.view.View;

public class touch extends Activity {      } 

 class MyView extends View{ 

         private Paint mPaint, pointPaint;

      private Bitmap mBitmap; 

              Context mContext;

              int n;

          public MyView(Context context) { 

                super(context); 

                mContext = context;

                mPaint = new Paint(); 

                mPaint.setAntiAlias(true); 

                mPaint.setARGB(0, 0xff, 0, 0);

                pointPaint = new Paint();

                pointPaint.setARGB(150, 0, 255, 255);

                pointPaint.setTextSize(30);

                DisplayMetrics dm = new DisplayMetrics();

                dm=getResources().getDisplayMetrics();

                mBitmap = Bitmap.createBitmap(dm.widthPixels, dm.heightPixels, Bitmap.Config.RGB_565); 

         

          }

          protected void onDraw(Canvas canvas) { 

                super.onDraw(canvas);  

                if(mBitmap != null) 

                    canvas.drawBitmap(mBitmap, 0, 0, null); 

            }

         public boolean onTouchEvent(MotionEvent event) { 

                float x =  0;

                float y =  0;

                x =   event.getX();

                y =   event.getY();

                Canvas canvas = new Canvas(); 

                canvas.setBitmap(mBitmap); 

                if(event.getAction() == MotionEvent.ACTION_DOWN){

                    n++;

                    mPaint.setARGB(0xff, 255, 250, 250);

                    canvas.drawLine(getWidth()/2 , getHeight()/5, getWidth()/2,getHeight()/2, mPaint);//画直线

                    canvas.drawARGB(0, 70, 90, 0);

                    canvas.drawCircle(x, y, 30, mPaint);

                    invalidate();

                    mPaint.setStyle(Paint.Style.FILL_AND_STROKE);

                    invalidate();                //刷新但不更新背景

                }else{            

                    mPaint.setARGB(100, 0xff, 0, 0); 

                    canvas.drawCircle(x, y, 30-n, mPaint); 

                    invalidate();     

                    {

                         Rect rect1 = new Rect();   // 定义矩形对象

                         // 设置矩形大小

                         rect1.left = 6+n*n;

                         rect1.top = 13+5+n*n;

                         rect1.bottom = 130+25+n*n;

                         rect1.right = 45+n*n;

                         mPaint.setColor(Color.BLUE);

                         // 绘制矩形

                         canvas.drawRect(rect1, mPaint);

                         }

                       invalidate();

                 }

                if(event.getAction() == MotionEvent.ACTION_UP){

                    canvas.drawText("您画圆的个数为"+n, mBitmap.getWidth()/2-90, 30, pointPaint);

                    canvas.drawText("矩形个数为"+n, mBitmap.getWidth()/2-90, 60, pointPaint);

                    invalidate();

                }

                return true; 

         }

   }