【问题标题】:Toast makes Activity blink on button clickToast 使 Activity 在按钮单击时闪烁
【发布时间】:2018-05-26 11:04:06
【问题描述】:

我在屏幕顶部有按钮,在下方有相机预览,当我按下按钮时屏幕闪烁,但希望它显示 Toast。在我注释掉 Toast.makeText() 后它停止闪烁,并且日志显示该按钮被单击。

组件树(以防万一,我不想改):

代码:

public final class CaptureActivity extends AppCompatActivity {
 Button button;
 Context context;

...

public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.capture);

        button = (Button)findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                        Toast.makeText(context, "BUTTON clicked", Toast.LENGTH_LONG).show();
                        Log.d("BUTTON","CLICKED");
                    }
        });

        mPreview = (CameraSourcePreview) findViewById(R.id.preview);
        mGraphicOverlay = (GraphicOverlay<Graphic>) findViewById(R.id.graphicOverlay);

【问题讨论】:

    标签: android-layout onclick android-button buttonclick android-toast


    【解决方案1】:

    你在哪里定义了Context

    它是null。放getApplicationContext()可能没问题

    【讨论】:

      【解决方案2】:

      我认为最好在活动中显示如下吐司:

      Toast.makeText(this, "Message", Toast.LENGTH_SHORT).show(); 我的意思是将 this 传递给 toast 的第一个参数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多