AndroidStudio点击第一个界面里不同的3个textview,跳转至第二个界面且在一个textview分别滚动显示不同的txt文件,写代码
时间: 2023-06-13 14:07:12 浏览: 87
Android中TextView实现部分文字可点击跳转
首先,在第一个界面中,需要为三个 TextView 添加点击事件,并在点击事件中跳转至第二个界面,并将需要显示的 txt 文件名以 Intent 的形式传递给第二个界面。代码如下:
```java
public class MainActivity extends AppCompatActivity {
private TextView textView1, textView2, textView3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView1 = findViewById(R.id.textView1);
textView2 = findViewById(R.id.textView2);
textView3 = findViewById(R.id.textView3);
textView1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("fileName", "file1.txt");
startActivity(intent);
}
});
textView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("fileName", "file2.txt");
startActivity(intent);
}
});
textView3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("fileName", "file3.txt");
startActivity(intent);
}
});
}
}
```
在第二个界面中,需要首先获取从第一个界面传递过来的 txt 文件名,并根据其内容设置到一个 TextView 中。这里我们使用 ScrollView 和 TextView 来实现滚动显示。代码如下:
```java
public class SecondActivity extends AppCompatActivity {
private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
textView = findViewById(R.id.textView);
Intent intent = getIntent();
String fileName = intent.getStringExtra("fileName");
if(fileName != null) {
try {
InputStream inputStream = getAssets().open(fileName);
int size = inputStream.available();
byte[] buffer = new byte[size];
inputStream.read(buffer);
inputStream.close();
String text = new String(buffer);
textView.setText(text);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
```
其中,getAssets() 方法可以获取到该应用程序的 assets 文件夹。我们通过调用它的 open() 方法,传入 txt 文件名,可以获取到该文件的输入流。然后,我们通过读取输入流中的内容,并将其设置到 TextView 中即可实现滚动显示。
阅读全文