2014-11-10 4 views
0

Я пытаюсь сделать диалог помощи, который предоставляет некоторые полезные советы пользователям моего приложения. Советы должны быть в ресурсе @string для обработки языковых проблем. Диалог должен появиться на клике, а текст в нем должен прокручиваться. Моя текущая реализация не отвечает этим требованиям. Вот код:Попытка сделать диалог по щелчку

import android.app.Activity; 
import android.app.AlertDialog; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
import android.support.v4.app.DialogFragment; 
import android.text.InputType; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 
import ch.OptiLab.visuscontroll.R; 


public class MainActivity extends Activity implements OnClickListener { 

    TextView textView; 
    Button buttonende; 
    Button tipps; 
     Button btn1; 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 

      textView = (TextView) findViewById(R.id.textView); 
      tipps = (Button) findViewById(R.id.tipps); 
      btn1 = (Button) findViewById(R.id.buttonSTART); 
      buttonende = (Button) findViewById(R.id.buttonende); 
      btn1.setOnClickListener(this); 

      tipps.setOnClickListener(new View.OnClickListener(){ 

      @Override 
      public void onClick(View v) { 

       // 1. Instantiate an AlertDialog.Builder with its constructor 
       AlertDialog.Builder builder = new AlertDialog.Builder (MainActivity.this.getActivity()); 

       // 2. Chain together various setter methods to set the dialog characteristics 
       builder.setMessage(R.string.dialog_message) 
         .setTitle(R.string.dialog_title); 

       // 3. Get the AlertDialog from create() 
       AlertDialog dialog = builder.create(); 
      } 
      }); 
+6

ли вы назвать dialog.show()? –

+3

А также вам не нужно передавать 'MainActivity.this.getActivity', просто передайте Activity в форме' this' для вашего AlertDialog.Builder – zgc7009

ответ

0

Изменить код для

(...) 
AlertDialog dialog = builder.create();  
dialog.show(); //Do not forget this line 

Кроме того, убедитесь, что правильно инициализировать строитель:

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
+0

мое приложение останавливается, если я нажму кнопку ... я пропустил или что нибудь? – rodentooth

+0

@rodentooth Можете ли вы показать нам Logcat с ошибкой/исключением, с которой вы сталкиваетесь, или на какой строке приложение останавливается? –

+0

@rodentooth Удостоверьтесь, что правильно инициализировали построитель: 'AlertDialog.Builder builder = new AlertDialog.Builder (MainActivity.this);' –

Смежные вопросы