`
iflytek_wjzhu
  • 浏览: 41905 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Android日记之2011\12\26

阅读更多
做过项目的童鞋们应该会遇到过这样的情况,我有的参数实在类A中获得的,但是我在类B需要这个参数来做一些事情。一般来说有一个做法是设定全局变量,通过调用全局变量来获得该参数,这也是我在学习的过程中学到的方法。
但是,这种全局变量往往会带来一个问题就是当我这个数据不需要使用时,或者说是我这个数据需要重新获得值的时候,往往会获得以前的值或者就是值没清楚干净。这样就会给程序带来问题。
好在我近期看到一个例子,用接口来传参,感觉很神奇,当时做了些的笔记。但是今天自己用的时候发现又有些遗忘了,所以现在拿出来记录一笔。
大致的过程是这样的,我有一个Activity类,一个普通类来控制一个Dialog,还有一个接口,有Activity类控制显示Dialog,再由Dialog来控制Activity退出。
话不多说,上代码:
接口:
public interface MyInterface {
void CloseActivity(boolean isClose);
}
Activity类,显示Dialog:
public class InterfaceDemoActivity extends Activity{
    /** Called when the activity is first created. */
private Button button;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new OnClickListener() {

public void onClick(View v) {
// TODO Auto-generated method stub
MyDialog md = new MyDialog(InterfaceDemoActivity.this, mi);
md.ShowDialog();
}
});
    }
   
    MyInterface mi = new MyInterface() {

public void CloseActivity(boolean isClose) {
// TODO Auto-generated method stub
if(isClose){
InterfaceDemoActivity.this.finish();
}
}
};
}
普通类,控制Dialog:
public class MyDialog {

private Context mContext;
private AlertDialog alert;
private MyInterface mMI;

public MyDialog(Context context,MyInterface mi){
this.mContext = context;
this.mMI = mi;

CreatDialog();
}

private void CreatDialog(){
AlertDialog.Builder builder = new AlertDialog.Builder(this.mContext);
builder.setMessage("Are you sure you want to exit?")
       .setCancelable(false)
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) {
                MyDialog.this.mMI.CloseActivity(true);
           }
       })
       .setNegativeButton("No", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
           }
       });
alert = builder.create();
}

public void ShowDialog(){
alert.show();
}
}

其实,看过Android的Dialog的文档的童鞋可以发现我的普通类里面完全用的就是文档中Dialog的例子,可以直接在Activity类中用,那为什么我这边还要多此一举呢?原因是面向对象中,类的单一原则,一个类只干一件事。我既然在Activity类中控制了Dialog的显示,那我索性就新建一个类来控制Dialog的操作。但是我的普通类没法直接控制Activity类的关闭,那我就索性用接口来给Activity类传个boolean值,告诉它你可以关闭了。当然,接口的传值还可以用在别的方面,这就要自己在实际的操作中去摸索了。
0
0
分享到:
评论

相关推荐

    android_日记本.zip

    在Android平台上开发一款日记本应用是一项常见的任务,尤其对于初学者和有经验的开发者来说都是一个有趣的实践项目。本文将围绕“安卓日记本”的主题,深入探讨如何使用Android Studio进行应用开发,以及在这个过程...

    Android代码-移动日记本功能包含传统的日记本和音频日记视频日记实现私密日记和普通日记。.zip

    在Android平台上,开发一款移动日记本应用是一种常见的实践,它为用户提供了一种便捷的方式来记录他们的日常生活,情感体验,以及重要事件。这款名为"Diary"的应用不仅包含了传统的文本日记功能,还创新性地集成了...

    android之日记本的实现

    在Android平台上,开发一个个人日记本应用涉及到...综上所述,实现一个Android日记本应用涵盖了数据库操作、UI设计、数据持久化、用户交互等多个方面,涉及的知识点丰富多样,对开发者来说是一个很好的实战练习项目。

    Android日记本(上线版)

    《Android日记本(上线版)》是一款专为Android平台设计的日记应用,旨在提供便捷、个性化的记录方式,让用户能够随时随地记录生活中的点滴。这款应用的第二版已经正式上线,并在指定网址...

    android日记

    在Android平台上开发一款日记应用,涉及的技术点广泛且深入,涵盖了...以上是开发“Android日记”应用涉及的主要技术点,实际开发中还需要结合测试、性能优化、用户体验改进等多方面工作,以打造一个高质量的日记应用。

    android 日记本

    在Android平台上,开发一款日记本应用是一个常见的实践项目,它能帮助用户记录日常生活中的点滴,同时为初学者提供了一个理解Android应用开发的良好起点。这款"android 日记本"源代码正是这样一个实例,它包含了基本...

    Android应用源码之日记本.zip

    【Android应用源码之日记本.zip】是一个包含Android应用程序源代码的压缩文件,重点在于学习和研究Android开发。这个源码实例很可能是一个简单的日记应用程序,它可以帮助开发者理解如何在Android平台上构建用户友好...

    基于android的个人日记本程序(Sqlite数据库).zip

    《基于Android的个人日记本程序:SQLite数据库应用详解》 在移动应用开发领域,Android操作系统以其开源、灵活性和广泛的应用范围占据了重要的地位。本项目“基于Android的个人日记本程序”是一个典型的应用实例,...

    Android日记本小程序.rar

    【Android日记本小程序】是一个专为Android平台设计的轻量级应用示例,它展示了如何在Android环境中开发一个简单的日记应用程序。这个项目包含了完整的源代码和详细的说明文档,旨在帮助初学者,特别是对软件开发有...

    Android日记本源码

    【Android日记本源码】是一个深入探讨Android应用开发的实例,尤其关注布局设计与数据存储这两方面的技术。在这个项目中,开发者将学习如何构建一个功能齐全的日记应用程序,包括创建用户友好的界面、记录和保存用户...

    基于android的日记本

    【基于Android的日记本】是一款专为Android系统设计的简易日记应用,它利用SQLite数据库技术,为用户提供方便快捷的日记记录、编辑与管理服务。在这款应用中,SQLite作为一个轻量级的数据库引擎,能够在没有独立...

    Android日记本

    【Android日记本】是一款专为Android用户设计的个人日记应用,它具备了基本的日记管理功能,如添加、删除、修改和查询等。这款应用强调安全性,采用密码登录机制,确保用户的私密信息得到妥善保护。同时,其界面设计...

    android日记本

    在移动设备上,日记类应用一直是用户常用的功能之一,而“Android日记本”则是一款由个人开发者基于Android平台自行设计并实现的日记应用。这款应用不仅具备了日记的基本功能,如记录文字、日期、时间等,还创新性地...

    Android日记

    这篇"Android日记"深入探讨了Android开发中的日志使用、调试技巧以及如何优化日志输出,旨在帮助初/中级开发者提升技能。让我们一起翻开这本Android Study Diary,探索其中蕴含的宝贵知识。 首先,理解Android的...

    Android 日记本学习实例

    本实例“Android日记本”是针对初学者和有一定基础的开发者设计的,它基于Android 5.0(Lollipop)系统,能够正常运行,提供了一个完整的应用开发流程的示例。 首先,让我们深入了解一下Android应用程序的基本结构...

    Android日记本软件(源码)

    【Android日记本软件(源码)】是一款专为Android平台设计的个人日记应用,由自学开发者编写的。这个项目提供了一整套实现日记记录、查看和管理功能的源代码,对于学习Android应用开发的初学者或者希望深入理解...

    android日记系统源码(数据库的基本操作)

    android日记系统源码(数据库的基本操作)

    Android 日记系统源码(数据库的基本操作).zip

    在本项目中,"Android 日记系统源码(数据库的基本操作).zip" 提供了一个完整的 Android 应用程序源代码,它实现了一个简单的日记系统。这个应用的核心功能包括日记的创建、存储、检索和编辑,涉及到Android开发中...

    Android实现一款优雅简洁的日记App

    在Android平台上开发一款优雅简洁的日记App,可以充分利用Android系统的特性以及...以上就是构建一个优雅简洁的Android日记App所需的关键技术点,通过这些技术,我们可以打造出一个功能完善、用户体验优秀的日记应用。

Global site tag (gtag.js) - Google Analytics