当前位置:  编程技术>移动开发
本页文章导读:
    ▪配备记录        配置记录     AndroidManifest.xml常用属性配置 1.android:screenOrientation="portrait"设置activity不转屏     ......
    ▪ 视觉复原        视觉还原 - (void) viewDidAppear:(BOOL)animated{ UIView *view=(UIView *)[[AppDelegate appDelegate].window viewWithTag:800]; [view removeFromSuperview]; UIImageView *bgImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0,320,480)];.........
    ▪ 项目的小结2、使用bindService()和界面交互数据       项目的总结2、使用bindService()和界面交互数据 基本步骤 1、构造查询界面:一个输入框 + 一个按钮 + 一个显示框   2、在Activity的onCreate()方法:添加按钮点击事件   3、定义一个数据查询接口I.........

[1]配备记录
    来源: 互联网  发布时间: 2014-02-18
配置记录

 

 

AndroidManifest.xml常用属性配置
1.android:screenOrientation="portrait"设置activity不转屏

 

 


    
[2] 视觉复原
    来源: 互联网  发布时间: 2014-02-18
视觉还原
- (void) viewDidAppear:(BOOL)animated{
    UIView *view=(UIView *)[[AppDelegate appDelegate].window viewWithTag:800];
    [view removeFromSuperview];
    UIImageView *bgImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0,320,480)];
    bgImage.tag = 800;
    [bgImage setImage:[UIImage imageNamed:@"testSubject.png"]];
    [bgImage setAlpha:0.4];
    [[AppDelegate appDelegate].window addSubview:bgImage];
}


    
[3] 项目的小结2、使用bindService()和界面交互数据
    来源: 互联网  发布时间: 2014-02-18
项目的总结2、使用bindService()和界面交互数据

基本步骤

1、构造查询界面:一个输入框 + 一个按钮 + 一个显示框

 

2、在Activity的onCreate()方法:添加按钮点击事件

 

3、定义一个数据查询接口IStudent的一个方法 queryStudent()

 

4、新建Service子类StudentService,在其内部定义一个内部类StundentBinder,

      StundentBinder实现IStudent并继承Binder。 >>>>此步是重中之重,非常关键。

 

5、实现StudentService的onBind(),和具体的查询方法

 

6、在Activity中新建一个内部类,实现ServiceConnection接口,

       添加未实现的方法onServiceConnected和onServiceDisconnected(暂不添加处理逻辑)

   

7、在Activity中添加IStundent的属性iStundent,在方法onServiceConnected和onServiceDisconnected进行赋值和销毁

 

8、在Activity中添加ServiceConnection的属性conn,并在onCreate()中实现bindService(),

     conn是bindService()所必须的参数。

 

9、在点击事件处理逻辑中,调用iStundent的查询方法,从服务中获得数据。

 

10、在Activity中覆写onDestroy,调用unbindService()

===================================================================

下面我们附加上代码:

1、构造查询界面:一个输入框 + 一个按钮 + 一个显示框

   <EditText  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/studentno"
    />
    
   <Button  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/button"
    android:id="@+id/button"
    />
    
    <TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/resultView"
    />

 

2、在Activity的onCreate()方法:添加按钮点击事件

resultView = (TextView) this.findViewById(R.id.resultView);
studentno = (EditText) this.findViewById(R.id.studentno);
Button button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(new ButtonClickListener());

 

 

3、定义一个数据查询接口IStudent的一个方法 queryStudent()

public interface IStundent {
        public String queryStudent(int no);
}

 

 

4、新建Service子类StudentService,在其内部定义一个内部类StundentBinder,

StundentBinder实现IStudent并继承Binder。 >>>>此步是重中之重,非常关键。

 

public class StudentService extends Service{
       private class StundentBinder extends Binder implements IStundent{
		public String queryStudent(int no) {
			return query(no);
		}
       }
}

 

5、实现StudentService的onBind(),和具体的查询方法

public String query(int no){
		String[] names = {"张飞","李小龙","赵薇"};
		if(no>0 && no<4){
			return names[no - 1];
		}
		return null;
	}
	
	@Override
	public IBinder onBind(Intent intent) {
		
		return new StundentBinder();
	}

 

6、在Activity中新建一个内部类,实现ServiceConnection接口,

添加未实现的方法onServiceConnected和onServiceDisconnected(暂不添加处理逻辑)

private class StudentServiceConnection implements ServiceConnection{
	    public void onServiceConnected(ComponentName name, IBinder service) {
	    }
	    public void onServiceDisconnected(ComponentName name) {
	    }
}

 

7、在Activity中添加IStundent的属性iStundent,在方法onServiceConnected和onServiceDisconnected进行赋值和销毁

 

private IStundent iStundent;

public void onServiceConnected(ComponentName name, IBinder service) {
      iStundent = (IStundent)service;
}
public void onServiceDisconnected(ComponentName name) {
      iStundent = null;
}

 

8、在Activity中添加ServiceConnection的属性conn,并在onCreate()中实现bindService(),

conn是bindService()所必须的参数。

 

private ServiceConnection conn = new StudentServiceConnection();

Intent intent = new Intent(this, StudentService.class);
bindService(intent, conn, BIND_AUTO_CREATE);

 

9、在点击事件处理逻辑中,调用iStundent的查询方法,从服务中获得数据。

  

public void onClick(View v) {
       String no = studentno.getText().toString();
       String name = iStundent.queryStudent(Integer.valueOf(no));
       resultView.setText(name);
}

 

 10、在Activity中覆写onDestroy,调用unbindService()

protected void onDestroy() {
      unbindService(conn);
      super.onDestroy();
}

 


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android开发之登录验证实例教程 iis7站长之家
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3