/**
*
*/
package com.photoshare.view;
import android.view.View;
import android.widget.Button;
import com.photoshare.common.IObserver;
/**
* @author czj_yy
*
*/
public class UserBooleanBtn implements IObserver<Boolean> {
private Button btn;
private View baseView;
private int BtnRid;
private boolean initValue;
private String enabledStr;
private String intermediateStr;
private String disabledStr;
/**
* @param baseView
* @param btnRid
* @param initValue
* @param enabledStr
* @param disabledStr
*/
public UserBooleanBtn(View baseView, int btnRid, boolean initValue,
String enabledStr, String intermediateStr, String disabledStr) {
super();
this.baseView = baseView;
BtnRid = btnRid;
this.initValue = initValue;
this.enabledStr = enabledStr;
this.intermediateStr = intermediateStr;
this.disabledStr = disabledStr;
}
public void applyView() {
btn = (Button) baseView.findViewById(BtnRid);
update(initValue);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub'
btn.setText(intermediateStr);
btn.setEnabled(false);
OnClick();
}
});
}
/**
*
*/
private void OnClick() {
if (onClickListener != null) {
onClickListener.OnClick(this);
}
}
public interface OnObserverClickListener {
public void OnClick(IObserver<Boolean> observer);
}
private OnObserverClickListener onClickListener;
public void registerListener(OnObserverClickListener clickListener) {
this.onClickListener = clickListener;
}
/*
* (non-Javadoc)
*
* @see com.photoshare.common.IObserver#update(java.lang.Object)
*/
public void update(Boolean subject) {
// TODO Auto-generated method stub
if (subject) {
btn.setText(enabledStr);
} else {
btn.setText(disabledStr);
}
btn.setEnabled(true);
}
}