package cn.scau.scautreasure.widget;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;
import cn.scau.scautreasure.R;
import java.util.List;
/**
* User: special
* Date: 13-10-13
* Time: 下午7:29
* Mail: specialcyci@gmail.com
*/
public class SpinnerDialog extends AlertDialog.Builder {
private List<String> mList;
private Context mContext;
private String mText;
private int defaultPosition = 0;
private DialogListener dialogListener;
public SpinnerDialog(Context context, List<String> list) {
super(context);
mContext = context;
mList = list;
}
public void setMessage(String text){
mText = text;
}
public void setDefaultSelectPosition(int index){
defaultPosition = index;
}
public void setDialogListener(DialogListener dialogListener) {
this.dialogListener = dialogListener;
}
public AlertDialog.Builder createBuilder() {
final Spinner mSpinner = new Spinner(mContext);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_spinner_dropdown_item, mList);
mSpinner.setAdapter(adapter);
mSpinner.setSelection(defaultPosition);
setTitle(mText);
setView(mSpinner);
setNegativeButton(mContext.getString(R.string.btn_cancel), null);
setPositiveButton(mContext.getString(R.string.btn_retry),
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
int n = mSpinner.getSelectedItemPosition();
dialogListener.select(n);
}
});
return this;
}
public interface DialogListener {
public void select(int n);
}
}