import android.widget.Toast
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import kotlinx.android.synthetic.main.activity_main.*
import java.io.File
import java.io.FileReader
import java.io.InputStream
import java.util.jar.Manifest
class MainActivity : AppCompatActivity() {
// private val STORAGE_PERMISSION_CODE = 1
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
btnLogin.setOnClickListener {
Toast.makeText(this,"Some message", Toast.LENGTH_SHORT).show()
}
tvGoToRegistration.setOnClickListener{
val intent = Intent(this, RegistrationActivity::class.java)
startActivity(intent)
}
}
RegistrationActivity.kt
package com.example.myapplication
import android.content.Intent
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_registration.*
class RegistrationActivity : AppCompatActivity(){
val userName = etUserName.text.toString()
val userEmail = etUserEmail.text.toString()
val userPassword = etPassword.text.toString()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_registration)
btnRegistration.setOnClickListener {
if(validate() == false)
Toast.makeText(this,"Incomplete data", Toast.LENGTH_SHORT).show()
else
{
Toast.makeText(this, "Registration successed", Toast.LENGTH_SHORT).show()
// update database
}
}
}
activity_main.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">
<Button
android:id="@+id/btnLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.569" />
<TextView
android:id="@+id/tvGoToRegistration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Go to registration"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btnLogin" />
</androidx.constraintlayout.widget.ConstraintLayout>
activity_registraion.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"
android:orientation="vertical">
<EditText
android:id="@+id/etUserName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:hint="name.."
android:inputType="textPersonName"
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.155" />
<EditText
android:id="@+id/etUserEmail"
style="@android:style/Widget.DeviceDefault.Light.EditText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:hint="email.."
android:inputType="textEmailAddress"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/etUserName"
app:layout_constraintVertical_bias="0.147" />
<EditText
android:id="@+id/etPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:hint="password.."
android:inputType="textPassword"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/etUserEmail"
app:layout_constraintVertical_bias="0.165" />
<TextView
android:id="@+id/tvBackToLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Already sign in? Login"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btnRegistration" />
<Button
android:id="@+id/btnRegistration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Register"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/etPassword"
app:layout_constraintVertical_bias="0.383" />
</androidx.constraintlayout.widget.ConstraintLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapplication">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".RegistrationActivity"/>
<activity android:name=".Test"/>
</application>
</manifest>
我相信这个问题是因为您试图在活动的oncreate
之前从edittexts
获取文本。
如果您将此代码移动到oncreate
中,它应该可以工作。
package com.example.myapplication
import android.content.Intent
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_registration.*
class RegistrationActivity : AppCompatActivity(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_registration)
//HERE AFTER setContentView, THE LAYOUT IS RENEDERED
val userName = etUserName.text.toString()
val userEmail = etUserEmail.text.toString()
val userPassword = etPassword.text.toString()
btnRegistration.setOnClickListener {
if(validate() == false)
Toast.makeText(this,"Incomplete data", Toast.LENGTH_SHORT).show()
else
{
Toast.makeText(this, "Registration successed", Toast.LENGTH_SHORT).show()
// update database
}
}
}
如果它不起作用,请张贴您这次得到的错误的stacktrace
很好的一天!我正在努力解决这个问题一周,这是以前没有的(也就是说,这个程序以前是有效的)。 问题:我的登录表单的GUI将不再加载。 给定:(LoginScreen类视图) 我的login_screenxml代码: 最后,我的AndroidID清单。xml 这是我的Logcat输出: 注意:每当我在“扩展活动”之后删除代码“implements JPacketListener”,并删除它的方法(on
我的应用程序运行得很好,我可以从一个活动转到另一个活动,然后我添加了一些Toast消息用于注册按钮,然后我在尝试从MainActivity转到RegistrationActivity时遇到了这个错误。。 美娜ctivity.kt 注册ctivity.kt activity_main.xml 活动注册。xml 显示 和logchat 2019-12-09 09:08:16.171 28691-286
我有一段时间在写代码 我的错误是: 无法实例化活动组件信息{com.example.example/com.example.sample.MainActivity}:java。lang.NullPointerException:尝试调用虚拟方法“android”。所容纳之物下午。Android应用信息。所容纳之物上下文对空对象引用执行getApplicationInfo()
我试图使用Postgis 2.2和Postgreql 9.5与JPA,Postgis 9.5方言。我已经在pom.xml的要求,按这里http://www.hibernatespatial.org/documentation/documentation/和类型导入正确,但是当我试图运行程序使用几何类型我得到这个错误: 我显然遗漏了一些配置,有人能指出是什么吗?
我在MapFragment的布局文件中出现了这个错误 我试过了 > 安装Google Play服务,但仍有错误 - com.google.android.gms.maps.MapFragment(开放类,显示异常,清除缓存) 提示:在自定义视图中使用view.isinEditMode()跳过代码或在IDE中显示示例数据。 如果这是一个意外错误,您也可以尝试构建项目,然后手动刷新布局。 异常详细信息
我正在将一个Java EE应用程序部署到Bluemix,当第一个请求到达时,我得到了这个错误: 2015-05-20T23:11:58.51+0200[app/0]OUT[INFO]FFDC1015I:已创建FFDC事件:“java.util.ServiceConfigurationError:javax.servlet.ServletContainerInitializer:Provider o