Clickable view / onclick: правильный подход, чтобы сделать View clickable? - PullRequest
1 голос
/ 06 января 2010

Следующий код сделает представление кликабельным, но мне интересно, если это правильный подход, чтобы сделать настраиваемое представление кликабельным?

Код:

public class NodePickup extends LinearLayout
{
 public NodePickup(Context context, AttributeSet attributeSet)
 {
  super(context, attributeSet);

  LayoutInflater inflater = (LayoutInflater)     context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        inflater.inflate(R.layout.nodepickup, this);

        this.setOnClickListener(new OnClickListener() 
        {
         @Override
   public void onClick(View v)
   {
          AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
          builder.setMessage("Ajabaja!")
          .setCancelable(true)
          .setPositiveButton("JA!", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int id) 
                    {
                     dialog.cancel();
                    }
                });
          builder.show();
   }
  });
 }
}

Ответы [ 2 ]

1 голос
/ 06 января 2010

Код в onClick() просто создает диалог - там нет ничего, что могло бы заставить его отображаться на экране. Чтобы заставить это работать, вызовите showDialog(int) в вашем обработчике кликов и внедрите onCreateDialog(int) в вашу деятельность.

Дополнительные сведения см. В разделе Создание диалогов документации Android.

0 голосов
/ 06 января 2010

Вызов setOnClickListener () является подходящим способом сделать представление интерактивным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...