java - 弹出创建对话框 - Android studio
问题描述
整个 javascript 场景相对较新 - 尝试创建我的第一个应用程序!到目前为止,我已经设法创建了基本布局、链接到下一个 .xml 的按钮等。但是我真的很想要一个按钮,当单击它时,会打开一个弹出窗口,其中包含一些信息(几行描述应用程序的用途) . 不幸的是,所有教程虽然有帮助,但没有解释 mainactivity.java 中的哪个位置(例如)我需要放置代码(即在什么标签之前?我需要保留/替换什么?)我将粘贴我的完整代码对于activity.xml 和完整的mainactivity.java - 希望你们的传说能够给我一个指导!
爪哇:
package com.example.newapp;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openactivity_tasks();
}
});
}
public void openactivity_tasks(){
Intent intent = new Intent(this,activity_tasks.class);
startActivity(intent);
}
}
.xml:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="@color/black"
tools:ignore="ExtraText">
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.09"
app:srcCompat="@drawable/shortlogo"
tools:ignore="ContentDescription" />
<Button
android:id="@+id/button"
android:layout_width="300dp"
android:layout_height="300dp"
android:background="@drawable/circlebutton"
android:text="@string/hit_me"
android:textColor="#000"
android:textSize="28dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.711" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:paddingBottom="5dp"
android:text="Design and What2Do owned by Armourtal Ltd 2021"
android:textColor="@color/grey"
android:textSize="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.092"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:paddingBottom="5dp"
android:text="Version 0.0.1"
android:textColor="@color/grey"
android:textSize="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.963"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_margin="30dp"
android:textSize="22sp"
android:text="This is a popup window."
android:textColor="@color/white"/>
</androidx.constraintlayout.widget.ConstraintLayout>
解决方案
您可以在 Java 文件中使用此代码
private void showInfo() {
AlertDialog.Builder builder = new AlertDialog.Builder(this, R.style.AlertDialogStyle);
builder.setMessage("Put your piece of information HERE");
// Create and show the AlertDialog
final AlertDialog alertDialog = builder.create();
alertDialog.show();
}
在您的 styles.xml 中添加此代码以更改文本和背景颜色
<style name="AlertDialogStyle" parent="Theme.AppCompat.Light.Dialog">
<!-- textColor. -->
<item name="android:textColorPrimary">#000</item>
<!-- background Color. -->
<item name="android:background">#fff</item>
</style>
在 Button 中使用方法 showInfo()
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showInfo();
}
});
推荐阅读
- c# - 用鼠标 x 轴控制播放器 z 轴
- go - Golang 中的 Terraform 列表对象
- time-complexity - 确定算术级数的时间复杂度
- codeigniter-2 - 我如何激活 $record
- android - Whats 应用程序是否将您的联系人个人资料图片保存在您的设备上
- r - 根据字符创建新列
- c - 在不使用任何锁定机制的情况下从多个进程使用 fprintf 是否安全?
- python - 我想要一个带有 .loc [ ] 的数据框,来自 python 中的 pandas 多列
- python - 我无法在 python 的嵌套列表中找到重复的元素。如果有人有最好的解决方案?
- r - 如何在 R bu 中对数据框进行子集化以提取几列以及如何根据类似的列将列从一个数据框添加到另一个数据框