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

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


首先:三个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;

	@Override
	protected 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() {
			
			@Override
			public boolean onTouch(View v, MotionEvent event) {
				// TODO Auto-generated method stub
				switch(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() {
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				ActivityManager 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(){

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:18271682152"));
	
				startActivity(cal);
			}
			});
		button_father.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:13986615436"));
				startActivity(cal);
			}
		});
		button_lijie.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:13135929759"));
				startActivity(cal);
			}
		});
		button_ganweiqi.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:18682303058"));
				startActivity(cal);
			}
		});
		button_litie.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:18271683092"));
				startActivity(cal);
			}
		});
		button_wuhonghua.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:15172050762"));
				startActivity(cal);
			}
		});
		button_zhukunling.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:18271652311"));
				startActivity(cal);
			}
		});
		button_xiasu.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:15374537418"));
				startActivity(cal);
			}
		});
		button_1008611.setOnClickListener(new Button.OnClickListener(){
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent cal = new Intent();
				cal.setAction(Intent.ACTION_CALL);
				cal.setData(Uri.parse("tel:1008611"));
				startActivity(cal);
			}
		});		

	}
	

	@Override
	public boolean onTouch(View v, MotionEvent event) {
		// TODO Auto-generated method stub

	return 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() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent intent=new Intent();
				intent.putExtra("messagenum", "18271682152");
				intent.setClass(activity2.this, activity3.class);
				activity2.this.startActivity(intent);
			}
		});
		button_father.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent intent=new Intent();
				intent.putExtra("messagenum", "13986615436");
				intent.setClass(activity2.this, activity3.class);
				activity2.this.startActivity(intent);
			}
		});
		button_feiji.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent intent=new Intent();
				intent.putExtra("messagenum", "15172365787");
				intent.setClass(activity2.this, activity3.class);
				activity2.this.startActivity(intent);
			}
		});
		
		
		image2.setOnTouchListener(new OnTouchListener() {
			
			@Override
			public boolean onTouch(View v, MotionEvent event) {
				// TODO Auto-generated method stub
				
				switch(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")
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				ActivityManager 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() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent 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>



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值