Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- I tried this:
- Activity class:
- public MyActivity extends Activity implements onClickListener {
- TextView item;
- public void onCreate(Bundle state) {
- super.onCreate(savedState);
- setContentView(R.layout.main);
- item = (TextView) findViewById(R.id.id_item);
- item .setOnClickListener(this);
- }
- public void onClick(View v) {
- new MyBuilder(this).show();
- updateUI();
- }
- private void updateUI() {
- item.setText(ItemMap.item);
- }
- }
- Builder class:
- public class MyBuilder extends AlertDialog.Builder implements OnClickListener{
- Context context;
- String[] items = {"pen", "pencil", "ruler"};
- public MyBuilder(Context context) {
- super(context);
- super.setTitle("Select Item");
- this.context = context;
- super.setSingleChoiceItems(items, 0, this);
- }
- @Override
- public void onClick(DialogInterface dialog, int position) {
- ItemMap.item = items[position];
- dialog.dismiss();
- }
- }
- Mapping class:
- public class ItemMap {
- public static String item;
- }
- public MyActivity extends Activity implements onClickListener, AlertBuilderCallback {
- TextView item;
- public void onCreate(Bundle state) {
- super.onCreate(savedState);
- setContentView(R.layout.main);
- item = (TextView) findViewById(R.id.id_item);
- item .setOnClickListener(this);
- }
- public void onClick(View v) {
- new MyBuilder(this).addCallback(this).show();
- updateUI();
- }
- public void updateUI() {
- item.setText(ItemMap.item);
- }
- }
- public interface AlertBuilderCallback {
- public void updateUI();
- }
- public class MyBuilder extends AlertDialog.Builder implements OnClickListener{
- Context context;
- String[] items = {"pen", "pencil", "ruler"};
- public MyBuilder(Context context) {
- super(context);
- super.setTitle("Select Item");
- this.context = context;
- super.setSingleChoiceItems(items, 0, this);
- }
- public MyBuilder addCallback(AlertBuilderCallback callBack) {
- this.callBack = callBack;
- return this;
- }
- @Override
- public void onClick(DialogInterface dialog, int position) {
- ItemMap.item = items[position];
- if(this.callBack != null) {
- this.callBack.updateUI();
- }
- dialog.dismiss();
- }
- }
- public class ItemMap {
- public static String item;
- }
- @Override
- public void onClick(DialogInterface dialog, int position) {
- ItemMap.item = items[position];
- updateUI();
- dialog.dismiss();
Add Comment
Please, Sign In to add comment