AndroidStudio点击第一个界面里不同的3个textview,跳转至第二个界面且在textview分别显示不同的txt文件,写代码
时间: 2023-06-14 18:04:18 浏览: 76
首先,我们需要在第一个界面中设置点击事件,然后在点击事件中跳转到第二个界面并传递相应的参数。在第二个界面中,我们可以根据传递的参数来显示相应的txt文件内容。
下面是实现的代码示例:
在第一个界面中,我们可以这样设置点击事件:
```java
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView1 = findViewById(R.id.textView1);
TextView textView2 = findViewById(R.id.textView2);
TextView textView3 = findViewById(R.id.textView3);
textView1.setOnClickListener(this);
textView2.setOnClickListener(this);
textView3.setOnClickListener(this);
}
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
switch (view.getId()) {
case R.id.textView1:
intent.putExtra("file_name", "file1.txt");
break;
case R.id.textView2:
intent.putExtra("file_name", "file2.txt");
break;
case R.id.textView3:
intent.putExtra("file_name", "file3.txt");
break;
}
startActivity(intent);
}
}
```
在第二个界面中,我们可以这样根据传递的参数来显示相应的txt文件内容:
```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);
String fileName = getIntent().getStringExtra("file_name");
String fileContent = readFile(fileName);
textView.setText(fileContent);
}
private String readFile(String fileName) {
StringBuilder stringBuilder = new StringBuilder();
try {
InputStream inputStream = getAssets().open(fileName);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line);
stringBuilder.append("\n");
}
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString();
}
}
```
在上面的代码中,我们使用了一个 `readFile()` 方法来读取txt文件内容,并将其显示在TextView中。`readFile()` 方法使用了 `getAssets().open()` 方法来读取txt文件,并使用 BufferedReader 来逐行读取文件内容。