我正在尝试将歌曲的名称和艺术家分开作为“SongName_Artist”的内容文本视图我如何将SongsName和Artist分成2个textview
获取您的布局(您需要一个ID):
mLayout = findViewById(R.id.rootLayout);
找到您的内容文字:
contentTextView = findViewById(R.id.contentTextView);
String contentText = contentTextView.getText().toString();
为歌曲和艺术家创建TextView
:
TextView songTextView = new TextView(this);
TextView artistTextView = new TextView(this);
songTextView.setText(contentText.split("_")[0]);
artistTextView.setText(contentText.split("_")[1]);
将它们添加到布局:
mLayout.addView(songTextView);
mLayout.addView(artistTextView);
Java具有内置的拆分功能,在这种情况下可以使用。以下是java代码的外观:
String whole = "Song_Artist";
String[] pieces = whole.split("_");
String song = pieces[0]; //everything before the _
String artist = pieces[1]; //everything after the _
现在您已经分解了字符串,您可以继续使用setText根据需要设置textViews。
你可以使用string.split()方法来分隔字符串。
String str = "soniye_falak";
String[] parts = string.split("_");
String song = parts[0]; // soniye
String artist = parts[1] //falak
split()方法用于将字符串拆分为子字符串数组,并返回新数组。如果使用空字符串(“”)作为分隔符,则在每个字符之间分割字符串。注意:split()方法不会更改原始字符串。
你可以使用字符串Eg的分割函数(“your_string”)。split(“_”)并收集返回值代码到这里:
String song_artist = "S_A";
System.out.println(song_artist.split("_"));
String[] temp = song_artist.split("_");
for(int i=0; i<temp.length;i++) {
System.out.println(temp[i]);
}