Androidプログラミングのモニターの実現方法


本論文の例は、Androidプログラミングのモニターの実現方法を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
1、内部クラスを通じてモニターを実現し、イベントモニターを現在の内部クラスと定義し、内部クラスを使用して、現在のクラスでモニターを多重化することができる。
第一歩:モニター類を書き込み、対応する抽象的な方法をカバーする
第二ステップ:モニターオブジェクトの作成
ステップ3:登録
一つのバグを例にとって、コードは以下の通りです。

package cn.csdn.android.tesxt;
import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class TestListenerActivity extends Activity {
Button btn;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViews();
MyOnClickListener listener = new MyOnClickListener();
btn.setOnClickListener(listener);
}
private void findViews() {
btn = (Button) this.findViewById(R.id.button1);
}
class MyOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
Toast.makeText(TestListenerActivity.this, "xxx", Toast.LENGTH_SHORT)
.show();
}
}
}

2、匿名内部クラスは最も広範なイベント傍受形式であり、ほとんどのイベントモニターは一時的に一回だけ使用するので、匿名クラスを使用するのがより適切で、コードは以下の通りである。

package cn.csdn.android.tesxt;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class TestListenerActivity extends Activity implements OnClickListener {
Button btn;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViews();
btn.setOnClickListener(this);
}
private void findViews() {
btn = (Button) this.findViewById(R.id.button1);
}
@Override
public void onClick(View v) {
Toast.makeText(TestListenerActivity.this, "xxx", Toast.LENGTH_SHORT)
.show();
}
}

3、Activity自体はモニターとして、直接Activityでイベントプロセッサ方法を定義できます。形式は簡潔ですが、プログラムが混乱しやすいです。
ここで述べたように、皆さんのAndroidプログラムの設計に役に立ちます。