[英]Using list to interact with service android
我正在制作一個簡單的音樂播放器,我制作了一個帶有3個textvie和一個imagebutton的自定義列表適配器。
我在按鈕上放置了一個單擊偵聽器以顯示對話框。 在對話框中,有一個選項隊列。 此選項將用於使音樂服務中的歌曲排隊。 我想知道如何將我的服務與清單聯系起來? 如果無法連接,我如何將該隊列按鈕的操作發送給MainActivity?
以下是我的適配器代碼
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = LayoutInflater.from(getContext());
convertView = inflater.inflate(R.layout.songs_list, parent, false);
final Song song = getItem(position);
final ImageButton optionsImgBtn = convertView.findViewById(R.id.options_imgbbtn);
optionsImgBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
PopupMenu optionnMenu = new PopupMenu(getContext(), view);
optionnMenu.getMenuInflater().inflate(R.menu.list_option, optionnMenu.getMenu());
optionnMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
if(menuItem.getItemId()==R.id.vd){
}else if(menuItem.getItemId()==R.id.vdi){
}
return true;
}
});
optionnMenu.show();
}
});
TextView txtvDname = convertView.findViewById(R.id.dname_txtv);
TextView txtvArtist = convertView.findViewById(R.id.artist_txtv);
TextView txtvDuration = convertView.findViewById(R.id.duration_txtv);
txtvDname.setText(song.name);
txtvArtist.setText(song.artist);
txtvDuration.setText(getFormatedTime(Integer.parseInt(song.duration)));
return convertView;
}
順便說一句,我正在使用綁定服務。
注意:我知道如何使用onItemLongClickListner,但我不想使用它,而是想使用自己制作的按鈕。
我已經找到了解決方案,我認為這對使用Java的所有人都非常有幫助。
只需創建一個適配器的抽象類和一個抽象方法即可。 比您正在初始化適配器的活動中實施方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.