Android studio中.setText使用
1. activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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/textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textSize="20.0sp" />
</LinearLayout>
2. MainActivity.java
package com.example.myapplication0002;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView tv_data;
@SuppressLint("SetTextI18n")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_data=(TextView) findViewById(R.id.textview);
tv_data.setText("技术"); // 在TextView中想要显示的数据
}
}
3. 遇到的问题
(1)一开始写调用神经网络.pb模型的代码,网络模型可以正常调用,预测结果能够显示在“Run”中;
(2)于是准备建一个TextView用来显示预测结果,但是APP直接闪退,Android studio却没有报错,依旧显示运行成功,查看“Run”,发现运行结果并没有在其中显示,于是新建了一个项目查看问题出在哪里;
(3)问题解决:最后发现是少写了下面这两行代码
setContentView(R.layout.activity_main); tv_data=(TextView)
findViewById(R.id.textview);
想当然的直接.settext,结果出错;
(4)另外,我的神经网络输出结果为一个[1,30]的数组,命名为output1,直接输出会报错,通过将其转换为String类型,对output2可正常输出;
String output2 = Arrays.toString(output1);
(5)output1的结果可输出在“Run”中查看;
for(float f : output1)
Log.d("结果为", ": " + f);