UI高级_Service获取随机数

Service

package com.example.week3lianxi.service;

import java.util.Random;

import android.app.Service;
import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;

public class MyBindService extends Service {

	public class MyBind extends Binder{
		public String getRandom() {
			//获取随机对象
			Random random = new Random();
			//返回随机数
			int s = random.nextInt(9);
			return ""+s;
		}
		public String sum(String one,String two) {
			Integer x = Integer.valueOf(one);			
			Integer y = Integer.valueOf(two);
			int sum = x+y;
			return ""+sum;
		}
	}
	//创建内部类对象
	private MyBind bind = new MyBind();
	
	
	@Override
	public IBinder onBind(Intent intent) {
		// TODO Auto-generated method stub
		return bind;
	}
	
	//注册
	String tag = "MyBindService";
	

}

Fragment

package com.example.week3lianxi;

import android.app.Service;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.IBinder;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.example.week3lianxi.service.MyBindService;
import com.example.week3lianxi.service.MyBindService.MyBind;

public class Frag_02 extends Fragment {
	
	private View view;
	
	private MyBindService.MyBind bind;

	//创建对象
	ServiceConnection connection = new ServiceConnection() {
		

		@Override
		public void onServiceDisconnected(ComponentName name) {
			// TODO Auto-generated method stub
			
		}
		
		@Override
		public void onServiceConnected(ComponentName name, IBinder service) {
			bind = (MyBind) service;
		}
	};

	private Button sui;
	private EditText first;
	private EditText second;
	private Intent intent;
	@Override
	public View onCreateView(LayoutInflater inflater,
		ViewGroup container,Bundle savedInstanceState) {
		view = inflater.inflate(R.layout.frag_02, container, false);
		
		
		
		intent = new Intent(getActivity(),MyBindService.class);
		
		getActivity().bindService(intent, connection, Service.BIND_AUTO_CREATE);
		
		sui = (Button) view.findViewById(R.id.sui);
		sui.setOnClickListener(new OnClickListener() {
			
			private EditText second2;

			@Override
			public void onClick(View v) {
				//获取随机数
				 String random = bind.getRandom();
				first = (EditText) view.findViewById(R.id.first);
				second = (EditText) view.findViewById(R.id.second);
				String firstText = first.getText().toString();
				if (firstText.equals("")) {
					first.setText(random);
				}else{
					
					second.setText(random);
				}
				
			}
		});	
		
		view.findViewById(R.id.sum).setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				String s1 = first.getText().toString();
				String s2 = second.getText().toString();
				String sum = bind.sum(s1, s2);
				Toast.makeText(getActivity(), sum+"", 0).show();
				
			}
		});
		
		
		
		return view;
		
	}
	
	@Override
	public void onDestroy() {
		getActivity().unbindService(connection);
	}
}

猜你喜欢

转载自blog.csdn.net/u013628092/article/details/85011591