Java 如何处理从xml到活动的单击
我是android新手,遵循本教程: (印地语) 在myMainActivity.java中:Java 如何处理从xml到活动的单击,java,android,android-activity,daemon,Java,Android,Android Activity,Daemon,我是android新手,遵循本教程: (印地语) 在myMainActivity.java中: 当我尝试运行该应用程序时,它会显示以下错误: 9 errors found 1 warning found 2 typos found 它要求我在 Log.i(标记:“this”,消息:“clickbtn:这是一条消息”) 我已经记下来了 这是我的活动\u main.xml: 谁能告诉我有什么错误吗 XML代码: <?xml version="1.0" encoding="utf-8"?&
当我尝试运行该应用程序时,它会显示以下错误:
9 errors found
1 warning found
2 typos found
它要求我在Log.i(标记:“this”,消息:“clickbtn:这是一条消息”)代码>
我已经记下来了
这是我的活动\u main.xml:
谁能告诉我有什么错误吗
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">
<TextView
android:id="@+id/topText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="60dp"
android:includeFontPadding="false"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:text="Welcome to Shivam Travels"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.504"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your username"
android:inputType="textPersonName"
app:layout_constraintStart_toStartOf="@+id/topText"
app:layout_constraintTop_toBottomOf="@+id/topText" />
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your password"
android:inputType="textPassword"
app:layout_constraintStart_toStartOf="@+id/editText"
app:layout_constraintTop_toBottomOf="@+id/editText" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:onClick="clickbtn"
android:text="Sign In"
app:layout_constraintStart_toStartOf="@+id/checkBox"
app:layout_constraintTop_toBottomOf="@+id/checkBox" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="176dp"
android:layout_height="65dp"
android:layout_marginTop="32dp"
android:text="Remember me!"
app:layout_constraintStart_toStartOf="@+id/editText2"
app:layout_constraintTop_toBottomOf="@+id/editText2" />
从代码中删除标记:和消息:用此代码替换代码
替换
Log.i(tag:"this", msg:"clickbtn: This is a message");
Log.i(tag:"this", msg:"clickbtn: This is a message");
与
下面是您的完整代码片段
JAVA文件
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
public class MainTestActivity extends Activity {
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = this;
setContentView(R.layout.activity_main);
}
public void clickbtn(View view){
Log.i("This","This is a message");
Toast.makeText(context, "Button Clicked", Toast.LENGTH_SHORT).show();
}
}
<?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">
<TextView
android:id="@+id/topText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="60dp"
android:includeFontPadding="false"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:text="Welcome to Shivam Travels"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.504"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your username"
android:inputType="textPersonName"
app:layout_constraintStart_toStartOf="@+id/topText"
app:layout_constraintTop_toBottomOf="@+id/topText" />
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your password"
android:inputType="textPassword"
app:layout_constraintStart_toStartOf="@+id/editText"
app:layout_constraintTop_toBottomOf="@+id/editText" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:onClick="clickbtn"
android:text="Sign In"
app:layout_constraintStart_toStartOf="@+id/checkBox"
app:layout_constraintTop_toBottomOf="@+id/checkBox" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="176dp"
android:layout_height="65dp"
android:layout_marginTop="32dp"
android:text="Remember me!"
app:layout_constraintStart_toStartOf="@+id/editText2"
app:layout_constraintTop_toBottomOf="@+id/editText2" />
</androidx.constraintlayout.widget.ConstraintLayout>
XML文件
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
public class MainTestActivity extends Activity {
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = this;
setContentView(R.layout.activity_main);
}
public void clickbtn(View view){
Log.i("This","This is a message");
Toast.makeText(context, "Button Clicked", Toast.LENGTH_SHORT).show();
}
}
<?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">
<TextView
android:id="@+id/topText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="60dp"
android:includeFontPadding="false"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:text="Welcome to Shivam Travels"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.504"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your username"
android:inputType="textPersonName"
app:layout_constraintStart_toStartOf="@+id/topText"
app:layout_constraintTop_toBottomOf="@+id/topText" />
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="Enter your password"
android:inputType="textPassword"
app:layout_constraintStart_toStartOf="@+id/editText"
app:layout_constraintTop_toBottomOf="@+id/editText" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:onClick="clickbtn"
android:text="Sign In"
app:layout_constraintStart_toStartOf="@+id/checkBox"
app:layout_constraintTop_toBottomOf="@+id/checkBox" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="176dp"
android:layout_height="65dp"
android:layout_marginTop="32dp"
android:text="Remember me!"
app:layout_constraintStart_toStartOf="@+id/editText2"
app:layout_constraintTop_toBottomOf="@+id/editText2" />
</androidx.constraintlayout.widget.ConstraintLayout>
有关详细信息:
希望这对您有所帮助。您定义了java不支持的上述类型。您可以这样做
public String tag = "this";
public String msg = "clickbtn:this is a message!";
Log.i(tag,msg);
替换
与
你从截图中获取了代码。问题是Android studio添加了一些信息,当您使用文本调用方法时,这些信息会显示参数的名称
这些信息不是代码的一部分,Android Studio添加这些信息只是为了通知您有关参数的信息,并使代码更具可读性
实际代码应为:
Log.i("this", "clickbtn: this is a message");
而不是:
Log.i(tag:"this", msg:"clickbtn: this is a message");
如果你使用它,Android Studio将向你显示标记:
和消息:
,即使它不是你代码的一部分。也显示你的xml代码。它以图像的形式出现在上面。你能给我看一下代码xml代码吗?我在上面添加了它不是文本,这是一个建议,兄弟,这不是一个错误@ajay@InsaneCat我知道,但是在这里,他是一个新的bie,不知道建议和如何处理,但你提到这是错误,但这不是他的代码。我已经删除了这一提及,很享受编码:)@Ajayksi我必须在我的XML代码之外添加你的XML代码,还是用你的代码替换我的代码?现在我只是举个例子……等等,我会修改你的代码代码。但是你可以用这样的方式点击。不用在xml中使用android:onClick=“clickbtn”非常感谢,但由于我刚刚开始学习,我无法理解大部分java文件,但它可以正常工作再次感谢!它现在起作用了吗?再次检查更新的答案,并查看下面出现的剪辑文本。