MainActivity.kt
class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) var button = findViewById<Button>(R.id.calcbutton) var button2 = findViewById<Button>(R.id.nextbutton) var number1 = findViewById<EditText>(R.id.numberinput1) var number2 = findViewById<EditText>(R.id.numberinput2) var result = findViewById<TextView>(R.id.result) } fun changeActivity(view:View) { startActivity(Intent(this, SubActivity::class.java)) } fun httprequest(view:View) { object : AsyncTask<Void,Void,String>() { override fun doInBackground(vararg params: Void): String? { val url = "http://www.google.com" val client = OkHttpClient() val request = Request.Builder().url(url).build() val call = client.newCall(request) val response = call.execute() val body = response.body() return body.toString() } }.execute() } }
でhttprequest
が対応ボタンを押すと、アプリが閉じてしまいます。しかし、以下のように書き直すと正常にボタンは動作します。
fun httprequest(view:View) { var result = findViewById<TextView>(R.id.result) result.text = "Hello" }
何がおかしいのでしょうか。
回答1件
あなたの回答
tips
プレビュー