相关疑难解决方法(0)

alertDialog.getButton()方法给出了空指针异常android

我打算用layout_weight = 1创建3个按钮,对自定义对话框不感兴趣.所以我写了下面的代码.它不工作.总是是按钮给我null.这段代码怎么了?

  AlertDialog dialog= new AlertDialog.Builder(this).create();
            dialog.setIcon(R.drawable.alert_icon);
            dialog.setTitle("title");
            dialog.setMessage("Message");
            dialog.setButton(AlertDialog.BUTTON_POSITIVE,"Yes", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface arg0, int arg1) {
                                                }
            });
            Button yesButton = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
            Log.w("Button",""+yesButton);//here getting null
            LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT, 1f);
            yesButton.setLayoutParams(layoutParams);
            dialog.show();
Run Code Online (Sandbox Code Playgroud)

此致,Android开发人员.

android android-alertdialog

44
推荐指数
3
解决办法
3万
查看次数

扩展Android中的AlertDialogs(在哪里可以找到示例,如何获取标题和按钮)

我一直在寻找关于如何正确扩展AlertDialogs并获得预期行为的例子,但我几乎找不到任何东西.

谷歌上的文档也没有多说.

是的,我知道我可以使用AlertDialog.Builder来构建最常见的东西,但由于某些原因,我想创建自己的AlertDialogs(我想要的代码包含在单独的java文件中,原因之一).

我创建了我的PausDialog.java(参见下面的代码),它显示但我无法获得标题或任何按钮(正面,负面等)以显示在对话框中.看这张图:

PausDialog中没有按钮也没有标题

那么,问题1:我在哪里可以找到关于如何正确扩展AlertDialogs以及之后如何使用它们的好的,干净的和有用的示例

问题2:为什么我不能使用下面的自定义AlertDialog看到标题或任何按钮?


PausDialog.java

package Test;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Handler;
import android.os.SystemClock;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class PausDialog extends AlertDialog 
{

    protected PausDialog(Context context) 
    {
        super(context, R.style.DialogTheme);

    }

    @Override
    protected void onCreate(android.os.Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.paus);
        WindowManager.LayoutParams params = getWindow().getAttributes();  
        params.gravity = Gravity.TOP;

        final …
Run Code Online (Sandbox Code Playgroud)

android android-alertdialog

3
推荐指数
3
解决办法
2万
查看次数

标签 统计

android ×2

android-alertdialog ×2