我有一个处理歌曲对象的程序,其中包含一些字段和播放列表对象,这些对象是歌曲的数组。我有一个功能完善的java编程,可以完成我需要它做的事情但是我试图将它转换成Android应用程序,它让我想把我的电脑扔出窗外。我不太了解XML,但我已经掌握了创建按钮等基础知识。
我在布局文件中有一个按钮,按如下方式实现:
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="@string/Button"
android:onClick="newPlaylist"/>
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button1" />
在我的主文件中,我有:
public void newPlaylist(View view){
Playlist list1 = new Playlist("First Playlist");
TextView first = (TextView) findViewById(R.id.textView1);
first.setText(list1.getName());
}
编辑:我能够在newPlaylist方法中添加一些内容。现在,当我点击按钮时,它会显示播放列表的名称,但我仍然想要编辑它,并且可以在屏幕上设置多个播放列表进行操作。
我想要做的就是将播放列表名称显示为可点击的文字或标签,以便可以更改名称,我可以从此处继续播放。
答案 0 :(得分:2)
Android documentation on the button component可能会帮助您解决问题。
我认为你的播放列表类看起来像这样
public class Playlist {
private String name;
public Playlist(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
如果是,那么处理按钮点击的方法应如下所示。
public void newPlaylist(View view) {
Playlist playlist = new Playlist("My First Playlist!"); // Create our playlist object
// Since button is the only component that uses 'newPlaylist' as a click listener, the view will always be the button
Button button = (Button) view; // We cast the view to button
button.setText(playlist.getName()); // This edits the button text, might want to create a TextView for this
}