写了一个对自己很实用的安卓软件

来源:互联网 发布:注册会计师软件哪个好 编辑:程序博客网 时间:2024/05/18 00:01

这个软件的功能是快速打电话和快速发短信。或许你会觉得这个软件太鸡肋,但对于我这种常联系的人很少的陈戌源来说,这个软件还是蛮有用的。这基本算是我开发的第一个“能用”的安卓程序,主要目的只是为了让自己大概了解安卓开发的流程,为接下来的学习做铺垫,所以软件做得还是比较挫的,大家看过笑笑就好……


首先:三个activity:

package com.example.fastcall;import com.example.fastcall.util.SystemUiHider;import android.R.layout;import android.annotation.TargetApi;import android.app.Activity;import android.app.ActivityManager;import android.content.Context;import android.content.Intent;import android.drm.DrmStore.Action;import android.net.Uri;import android.os.Build;import android.os.Bundle;import android.os.Handler;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnTouchListener;import android.widget.Button;import android.widget.ImageView;public class FullscreenActivity extends Activity implements OnTouchListener {private static final boolean AUTO_HIDE = true;private static final int AUTO_HIDE_DELAY_MILLIS = 3000;private static final boolean TOGGLE_ON_CLICK = true;private static final int HIDER_FLAGS = SystemUiHider.FLAG_HIDE_NAVIGATION;private SystemUiHider mSystemUiHider;private Button button_exit;private Button button_chenmo;private Button button_father;private Button button_lijie;private Button button_ganweiqi;private Button button_litie;private Button button_wuhonghua;private Button button_xiasu;private Button button_1008611;private Button button_zhukunling;private ImageView image;private int downx,downy,upx,upy;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_fullscreen);final View controlsView = findViewById(R.id.fullscreen_content_controls);//final View contentView = findViewById(R.id.fullscreen_content);button_exit = (Button) findViewById(R.id.dummy_button);button_chenmo = (Button) findViewById(R.id.button_chenmo);button_father = (Button) findViewById(R.id.button_father);button_lijie = (Button) findViewById(R.id.button_lijie);button_ganweiqi = (Button) findViewById(R.id.button_ganweiqi);button_litie = (Button) findViewById(R.id.button_litie);button_wuhonghua = (Button) findViewById(R.id.button_wuhonghua);button_1008611 = (Button) findViewById(R.id.button_1008611);button_xiasu = (Button) findViewById(R.id.button_xiasu);button_zhukunling = (Button) findViewById(R.id.button_zhukunling);image=(ImageView)findViewById(R.id.image);image.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubswitch(event.getAction()){case MotionEvent.ACTION_DOWN:downx=(int)event.getX();break;case MotionEvent.ACTION_MOVE:upx=(int)event.getX();if(downx-upx>100){//finish(); Intent intent = new Intent();              //intent.putExtra("testIntent", "123");              intent.setClass(FullscreenActivity.this, activity2.class);                 startActivity(intent);            FullscreenActivity.this.finish();break;}}return true;}});button_exit.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubActivityManager activitymanager=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);activitymanager.restartPackage(getPackageName());android.os.Process.killProcess(android.os.Process.myPid());           //FullscreenActivity.this.finish();}});button_chenmo.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:18271682152"));startActivity(cal);}});button_father.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:13986615436"));startActivity(cal);}});button_lijie.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:13135929759"));startActivity(cal);}});button_ganweiqi.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:18682303058"));startActivity(cal);}});button_litie.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:18271683092"));startActivity(cal);}});button_wuhonghua.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:15172050762"));startActivity(cal);}});button_zhukunling.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:18271652311"));startActivity(cal);}});button_xiasu.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:15374537418"));startActivity(cal);}});button_1008611.setOnClickListener(new Button.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent cal = new Intent();cal.setAction(Intent.ACTION_CALL);cal.setData(Uri.parse("tel:1008611"));startActivity(cal);}});}@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubreturn true;}}


package com.example.fastcall;import android.R.layout;import android.annotation.TargetApi;import android.app.Activity;import android.app.ActivityManager;import android.content.Context;import android.content.Intent;import android.drm.DrmStore.Action;import android.net.Uri;import android.os.Build;import android.os.Bundle;import android.os.Handler;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnTouchListener;import android.widget.Button;import android.widget.ImageView;public class activity2 extends Activity {private ImageView image2;private Button button_chenmo,button_father,button_feiji;private Button exit_button;private int downx,upx;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity2_out);image2=(ImageView)findViewById(R.id.image2);exit_button=(Button)findViewById(R.id.exit_button);button_chenmo=(Button)findViewById(R.id.button_chenmo);button_father=(Button)findViewById(R.id.button_father);button_feiji=(Button)findViewById(R.id.button_feiji);button_chenmo.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();intent.putExtra("messagenum", "18271682152");intent.setClass(activity2.this, activity3.class);activity2.this.startActivity(intent);}});button_father.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();intent.putExtra("messagenum", "13986615436");intent.setClass(activity2.this, activity3.class);activity2.this.startActivity(intent);}});button_feiji.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();intent.putExtra("messagenum", "15172365787");intent.setClass(activity2.this, activity3.class);activity2.this.startActivity(intent);}});image2.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubswitch(event.getAction()){case MotionEvent.ACTION_DOWN:downx=(int)event.getX();break;case MotionEvent.ACTION_MOVE:upx=(int)event.getX();if(downx-upx<-100){//finish(); Intent intent = new Intent();              intent.putExtra("testIntent", "123");              intent.setClass(activity2.this, FullscreenActivity.class);            intent.setFlags(intent.FLAG_ACTIVITY_CLEAR_TOP);            activity2.this.startActivity(intent);            overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right);            activity2.this.finish();break;}}return true;}});exit_button.setOnClickListener(new OnClickListener() {@SuppressWarnings("deprecation")@Overridepublic void onClick(View v) {// TODO Auto-generated method stubActivityManager activitymanager=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);activitymanager.restartPackage(getPackageName());android.os.Process.killProcess(android.os.Process.myPid());            finish();}});}}


package com.example.fastcall;import android.R.layout;import android.annotation.TargetApi;import android.app.Activity;import android.app.ActivityManager;import android.content.Context;import android.content.Intent;import android.drm.DrmStore.Action;import android.net.Uri;import android.os.Build;import android.os.Bundle;import android.os.Handler;import android.text.Editable;import android.text.GetChars;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnTouchListener;import android.widget.Button;import android.widget.EditText;import android.widget.ImageView;public class activity3 extends Activity{private Button button_send;private EditText edit_text;public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity3);Intent recive=getIntent();final String num=recive.getStringExtra("messagenum");edit_text=(EditText)findViewById(R.id.edit);button_send=(Button)findViewById(R.id.button_send);button_send.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();intent.setAction(Intent.ACTION_SENDTO);intent.setData(Uri.parse("smsto:"+num));intent.putExtra("sms_body", edit_text.getText().toString());startActivity(intent);}});}}


三个布局文件:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent" >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="@drawable/back3"        android:orientation="vertical"        android:visibility="visible" >        <Button            android:id="@+id/button_del"            android:layout_width="1dp"            android:layout_height="80dp"            android:text="" />        <Button            android:id="@+id/button_chenmo"            android:layout_width="match_parent"            android:layout_height="40dp"            android:background="@drawable/button_press"            android:text="Call:陈沫"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_father"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:爸爸"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_lijie"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:李杰"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_litie"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:李贴"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_ganweiqi"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:甘伟奇"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_xiasu"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:夏肃"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_wuhonghua"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:伍红华"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_zhukunling"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:朱坤林"            android:textColor="#CB4B04" />        <Button            android:id="@+id/button_1008611"            android:layout_width="match_parent"            android:layout_height="40dp"            android:layout_marginTop="10dp"            android:background="@drawable/button_press"            android:text="Call:1008611"            android:textColor="#CB4B04" />        <ImageView            android:id="@+id/image"            android:layout_width="match_parent"            android:layout_height="50dp"            android:background="@drawable/zuohua"            android:text="" />        <LinearLayout            android:id="@+id/fullscreen_content_controls"            style="?buttonBarStyle"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:layout_gravity="bottom|center_horizontal"            android:background="@color/black_btn"            android:orientation="horizontal" >            <Button                android:id="@+id/dummy_button"                style="?buttonBarButtonStyle"                android:layout_width="0dp"                android:layout_height="wrap_content"                android:layout_weight="1"                android:text="@string/dummy_button" />        </LinearLayout>    </LinearLayout></FrameLayout>


<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:background="@drawable/haimianbaobao"    android:orientation="vertical" >    <Button        android:id="@+id/button_chenmo"        android:layout_width="fill_parent"        android:layout_height="40dp"        android:layout_marginTop="140dp"        android:background="@drawable/mbutton_press"        android:textColor="#CB4B04"         android:text="Message:陈沫" />    <Button        android:id="@+id/button_father"        android:layout_width="fill_parent"        android:layout_height="40dp"        android:layout_marginTop="10dp"        android:background="@drawable/mbutton_press"        android:textColor="#CB4B04"         android:text="Message:爸爸" />    <Button        android:id="@+id/button_feiji"        android:layout_width="fill_parent"        android:layout_height="40dp"        android:layout_marginTop="10dp"        android:background="@drawable/mbutton_press"        android:textColor="#CB4B04"         android:text="Message:飞机" />    <ImageView        android:id="@+id/image2"        android:layout_width="match_parent"        android:layout_height="50dp"        android:layout_marginTop="240dp"        android:background="@drawable/youhua"        android:text="" />    <LinearLayout            android:id="@+id/fullscreen_content_controls"            style="?buttonBarStyle"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:layout_gravity="bottom|center_horizontal"            android:background="@color/black_btn"                        android:orientation="horizontal" >            <Button                android:id="@+id/exit_button"                style="?buttonBarButtonStyle"                android:layout_width="fill_parent"                android:layout_height="wrap_content"                android:layout_gravity="left"                android:layout_weight="1"                android:text="@string/dummy_button" />        </LinearLayout></LinearLayout>


<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="@drawable/xiaohuangren1"    android:orientation="vertical" >    <EditText        android:id="@+id/edit"        android:layout_width="fill_parent"        android:layout_height="200dp"        android:layout_alignParentLeft="true"        android:background="@drawable/biankuan"        android:gravity="top"        android:text=""        android:textColor="#000000"        android:layout_below="@+id/textview" >    </EditText>        <Button         android:id="@+id/button_send"        android:layout_below="@+id/edit"        android:layout_width="fill_parent"        android:layout_height="50dp"        android:layout_marginTop="20dp"        android:background="@drawable/send"        android:textColor="#CB4B04"        android:text="发送"        />    <TextView        android:id="@+id/textview"        android:layout_width="fill_parent"        android:layout_height="40dp"        android:layout_alignParentLeft="true"        android:layout_alignParentTop="true"        android:layout_marginTop="80dp"        android:gravity="center"        android:textColor="#CB4B04"        android:text="编辑信息:" /></RelativeLayout>


两个按钮按下改变的xml代码:

<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/bt" android:state_pressed="false"/>    <item android:drawable="@drawable/bt_press" android:state_pressed="true"/></selector>


<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/message_nomal" android:state_pressed="false"/>    <item android:drawable="@drawable/message_press" android:state_pressed="true"/></selector>


最后是mainfirst.xml:

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.example.fastcall"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="17" />    <application        android:allowBackup="true"        android:icon="@drawable/ic_launcher"        android:label="@string/app_name"        android:theme="@style/AppTheme" >        <activity            android:name="com.example.fastcall.FullscreenActivity"            android:launchMode="singleTop"            android:configChanges="orientation|keyboardHidden|screenSize"            android:label="@string/app_name"            android:theme="@style/FullscreenTheme" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activity android:name="activity2"               android:theme="@style/FullscreenTheme" >             </activity>        <activity android:name="activity3"               android:theme="@style/FullscreenTheme" >             </activity>    </application>          <uses-permission android:name="android.permission.CALL_PHONE" ></uses-permission>     <uses-permission android:name="android.permission.RESTART_PACKAGES"> </uses-permission></manifest>



0 0