相关疑难解决方法(0)

Android DialogFragment vs Dialog

谷歌建议我们使用DialogFragment而不是简单Dialog的使用Fragments API,但使用隔离DialogFragment的简单的是 - 否确认消息框是荒谬的.在这种情况下,最佳做法是什么?

android android-fragments android-dialog android-dialogfragment

231
推荐指数
7
解决办法
13万
查看次数

Android简单警报对话框

我需要向点击我的Android应用程序上的按钮的用户显示一条短信,在IOS上我只需要创建一个简单易用的AlertView,但是我正在努力,因为解决方案似乎难以实现x10倍.我看到我需要使用DialogFragment,但我无法理解如何使其工作,有人可以解释一下吗?此外,我的解决方案是正确的还是更容易向用户显示简单的短信?

android dialog android-alertdialog

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

如何实现确认(是/否)DialogPreference?

如何实现显示简单是/否确认对话框的首选项?

有关示例,请参阅Browser->Setting->Clear Cache.

android confirmation android-preferences dialog-preference

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

DialogFragment优于AlertDialog

在开发Android应用程序时,我已经读过,建议使用DialogFragment而不是直接使用AlertDialog来显示警报和确认.

例如,在DialogFragment的文档中完成此操作:http://developer.android.com/reference/android/app/DialogFragment.html

人们还说他们更喜欢这个: Android DialogFragment vs Dialog

我想知道这种方法的优点,因为代码变得更加复杂.

谢谢

android android-alertdialog android-dialogfragment dialogfragment

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

如何在Android中创建弹出窗口(PopupWindow)

要创建一个简单的工作PopupWindow,我们需要执行以下操作:

popup_example.xml:

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:padding="10dip"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <TextView         
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dip"
            android:text="Test Pop-Up" />

    </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

Java代码

LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

PopupWindow pw = new PopupWindow(inflater.inflate(R.layout.popup_example, null, false),100,100, true);

pw.showAtLocation(this.findViewById(R.id.main), Gravity.CENTER, 0, 0);
Run Code Online (Sandbox Code Playgroud)

我的要求是我需要一个

<TEXTVIEW android:layout_height="wrap_content" android:layout_width="fill_parent" />
Run Code Online (Sandbox Code Playgroud)

和a

<BUTTON android:id="@+id/end_data_send_button" android:text="Cancel"/>
Run Code Online (Sandbox Code Playgroud)

在我的popup_example.xml.如何在Java代码中处理这两个组件?

截图

android popupwindow android-popupwindow

45
推荐指数
5
解决办法
17万
查看次数

更改AlertDialog中的按钮颜色

如何AlertDialog在Android中更改按钮的颜色?

alert android dialog colors button

40
推荐指数
7
解决办法
7万
查看次数

带有一个,两个和三个按钮的Android Alert对话框

我不经常发出警报,但每次我这样做都需要一段时间来阅读文档并弄清楚如何去做.由于我现在必须这样做几次,我将在下面写下一个答案,我将来可以回来.具体来说,我想比较基本​​代码

  • 一键(OK)
  • 两个按钮(确定和取消)
  • 三个按钮(正面,负面,其他)

将这三种常见警报类型的基本代码放在一个位置以便将来进行简单参考和修改将会很不错.这个问题询问如何为一个按钮执行此操作.

我在下面添加我的答案.

android android-alertdialog

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

Android首选项图像选取器 - 如何在DialogPreference中接收结果

我想知道如何从DialogPreference中的Image Picker流程接收结果.

我希望能够在DialogPreference之后调用onActivityResult它,这样它就可以使用Uri所选图像的位置在点击确定/取消之前在对话框中向用户显示图像预览.

也许我需要在最后设置一些东西,onActivityResult然后调用生命周期钩子DialogPreference,但我不确定.

到目前为止逻辑是这样的:

ImagePreference.java

public class ImagePreference extends DialogPreference {

    View mView;

    public ImagePreference(Context context, AttributeSet attrs) {
        super(context, attrs);
        initWith(context, attrs);
    }

    private void initWith(Context context, AttributeSet attrs) {
        setWidgetLayoutResource(R.layout.pref_image_widget);
        setDialogLayoutResource(R.layout.pref_image_dialog);

    }

    @Override
    protected View onCreateDialogView() {
        mView = super.onCreateDialogView();

        ImageButton button = (ImageButton) mView.findViewById(R.id.add_image);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                ((SettingsContract.SelectImage)getContext()).fromGallery();
            }
        });

        return mView;
    }
Run Code Online (Sandbox Code Playgroud)

SettingsActivity.java

public class …
Run Code Online (Sandbox Code Playgroud)

java android

9
推荐指数
1
解决办法
503
查看次数

AppUpdateManager.startUpdateFlowForResult 不显示对话框

我正在尝试实现android 应用内更新。我正在按照官方门户中提供的教程进行操作,但调用 startUpdateflow 方法时未显示该对话框。请在下面找到我正在执行的代码块。

final AppUpdateManager appUpdateManager = AppUpdateManagerFactory.create(this);
    Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo();
    appUpdateInfoTask.addOnSuccessListener(new OnSuccessListener<AppUpdateInfo>() {
        @Override
        public void onSuccess(AppUpdateInfo appUpdateInfo) {
            try {
                Toast.makeText(getApplicationContext(),"Success.", Toast.LENGTH_SHORT).show();
                appUpdateManager.startUpdateFlowForResult(
                        appUpdateInfo,
                        AppUpdateType.FLEXIBLE,
                        SplashScreenActivity.this,
                        APP_UPDATE_REQUEST_CODE
                );
            } catch (IntentSender.SendIntentException e) {
                Toast.makeText(getApplicationContext(),"Exception received", Toast.LENGTH_SHORT).show();
                e.printStackTrace();
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

我能够看到成功祝酒词和线条

appUpdateManager.startUpdateFlowForResult() is called
Run Code Online (Sandbox Code Playgroud)

但这没有显示带有“不,谢谢”和“更新”按钮的更新对话框,如门户中所示。我也尝试使用FakeAppUpdateManager但这也没有帮助。

在此请求帮助!

android android-intent in-app-update

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

Android对话框自行消失

我正在使用以下代码创建自己的对话框:

public void ShowMessageDialog(String str){
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage(str);
    builder.setCancelable(false);
    builder.setNeutralButton("Ok", new DialogInterface.OnClickListener() {          
        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
        }
    });
    AlertDialog alert = builder.create();
    alert.show();
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,但在此函数中使用时,它似乎会自动消失:

public void test(String str){
    ShowMessageDialog("About to start new activity");
    Intent intent = new Intent(this,PageViewer.class);
    startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)

似乎新活动已经创建并且显然摆脱了对话框.但为什么?在打开新活动之前,活动是否应该停止?

谢谢!

android dialog

6
推荐指数
1
解决办法
5619
查看次数