Adding touch event on playlist tracks.

This commit is contained in:
Anonymous Raccoon
2018-08-29 01:49:44 +02:00
parent e989262f83
commit 2368d966d8
10 changed files with 220 additions and 382 deletions
+8
View File
@@ -70,6 +70,7 @@ namespace MusicApp
public View quickPlayLayout;
public bool HomeDetails = false;
public bool paused = false;
public bool StateSaved = false;
private Handler handler = new Handler();
private ProgressBar bar;
@@ -1356,6 +1357,7 @@ namespace MusicApp
base.OnResume();
paused = false;
instance = this;
StateSaved = false;
if(SearchableActivity.instance != null && SearchableActivity.instance.searched)
{
@@ -1486,5 +1488,11 @@ namespace MusicApp
else
base.OnBackPressed();
}
protected override void OnSaveInstanceState(Bundle outState)
{
StateSaved = true;
base.OnSaveInstanceState(outState);
}
}
}
-4
View File
@@ -262,7 +262,6 @@
<Compile Include="Resources\Portable Class\Browse.cs" />
<Compile Include="Resources\Portable Class\ChannelAdapter.cs" />
<Compile Include="Resources\Portable Class\CircleTransformation.cs" />
<Compile Include="Resources\Portable Class\PlaylistItemTouch.cs" />
<Compile Include="Resources\Portable Class\PlaylistTrackAdapter.cs" />
<Compile Include="Resources\Portable Class\SearchableActivity.cs" />
<Compile Include="Resources\Portable Class\Downloader.cs" />
@@ -701,9 +700,6 @@
<ItemGroup>
<AndroidResource Include="Resources\drawable\History.xml" />
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\layout\PlaylistSong.xml" />
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\Delete.xml" />
</ItemGroup>
@@ -1,4 +1,5 @@
using Android.Graphics;
using Android.Graphics.Drawables;
using Android.Support.V7.Widget;
using Android.Support.V7.Widget.Helper;
using Android.Widget;
@@ -16,10 +17,13 @@ namespace MusicApp.Resources.Portable_Class
public override bool IsItemViewSwipeEnabled => true;
public override bool IsLongPressDragEnabled => true;
private Drawable drawable;
public ItemTouchCallback(IItemTouchAdapter adapter)
{
this.adapter = adapter;
drawable = MainActivity.instance.GetDrawable(Resource.Drawable.Delete);
}
public override int GetMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder)
@@ -27,7 +31,7 @@ namespace MusicApp.Resources.Portable_Class
int dragFlag = ItemTouchHelper.Up | ItemTouchHelper.Down;
int swipeFlag = ItemTouchHelper.Left | ItemTouchHelper.Right;
if (MusicPlayer.queue[MusicPlayer.CurrentID()].Title == viewHolder.ItemView.FindViewById<TextView>(Resource.Id.title).Text)
if (Queue.instance != null && MusicPlayer.queue[MusicPlayer.CurrentID()].Title == viewHolder.ItemView.FindViewById<TextView>(Resource.Id.title).Text)
return MakeMovementFlags(dragFlag, 0);
return MakeMovementFlags(dragFlag, swipeFlag);
@@ -53,10 +57,22 @@ namespace MusicApp.Resources.Portable_Class
{
if (actionState == ItemTouchHelper.ActionStateSwipe)
{
viewHolder.ItemView.Alpha = 1 - Math.Abs(dX) / viewHolder.ItemView.Width;
viewHolder.ItemView.TranslationX = dX;
MainActivity.instance.contentRefresh.SetEnabled(false);
adapter.DisableRefresh(true);
ColorDrawable background = new ColorDrawable(Color.Red);
if (dX < 0)
{
background.SetBounds(viewHolder.ItemView.Right + (int)dX, viewHolder.ItemView.Top, viewHolder.ItemView.Right, viewHolder.ItemView.Bottom);
drawable.SetBounds(viewHolder.ItemView.Right - MainActivity.instance.DpToPx(52), viewHolder.ItemView.Top + (viewHolder.ItemView.Bottom - viewHolder.ItemView.Top - MainActivity.instance.DpToPx(36)) / 2, viewHolder.ItemView.Right - MainActivity.instance.DpToPx(16), viewHolder.ItemView.Top + (viewHolder.ItemView.Bottom - viewHolder.ItemView.Top + MainActivity.instance.DpToPx(36)) / 2);
}
else
{
background.SetBounds(viewHolder.ItemView.Left, viewHolder.ItemView.Top, viewHolder.ItemView.Left + (int)dX, viewHolder.ItemView.Bottom);
drawable.SetBounds(viewHolder.ItemView.Left + MainActivity.instance.DpToPx(16), viewHolder.ItemView.Top + (viewHolder.ItemView.Bottom - viewHolder.ItemView.Top - MainActivity.instance.DpToPx(36)) / 2, viewHolder.ItemView.Left + MainActivity.instance.DpToPx(52), viewHolder.ItemView.Top + (viewHolder.ItemView.Bottom - viewHolder.ItemView.Top + MainActivity.instance.DpToPx(36)) / 2);
}
background.Draw(c);
drawable.Draw(c);
}
else
base.OnChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
@@ -80,7 +96,6 @@ namespace MusicApp.Resources.Portable_Class
viewHolder.ItemView.Alpha = 1;
MainActivity.instance.contentRefresh.SetEnabled(true);
adapter.DisableRefresh(false);
if (from != -1 && to != -1 && from != to)
adapter.ItemMoveEnded(from, to);
@@ -93,9 +108,6 @@ namespace MusicApp.Resources.Portable_Class
public interface IItemTouchAdapter
{
bool RefreshDisabled();
void DisableRefresh(bool disable);
void ItemMoved(int fromPosition, int toPosition);
void ItemMoveEnded(int fromPosition, int toPosition);
void ItemDismissed(int position);
@@ -1,91 +0,0 @@
using Android.Graphics;
using Android.Graphics.Drawables;
using Android.Support.V7.Widget;
using Android.Support.V7.Widget.Helper;
using Android.Widget;
using Square.Picasso;
using System;
using System.Threading.Tasks;
namespace MusicApp.Resources.Portable_Class
{
public class PlaylistItemTouch : ItemTouchHelper.Callback
{
private IItemTouchAdapter adapter;
private int from = -1;
private int to = -1;
public override bool IsItemViewSwipeEnabled => true;
public override bool IsLongPressDragEnabled => true;
private Bitmap drawable;
private Paint paint;
public PlaylistItemTouch(IItemTouchAdapter adapter)
{
this.adapter = adapter;
drawable = BitmapFactory.DecodeResource(MainActivity.instance.Resources, Resource.Drawable.MusicIcon);
Console.WriteLine("&Drawable: " + drawable);
paint = new Paint();
paint.SetColorFilter(new PorterDuffColorFilter(Color.Argb(255, 33, 33, 33), PorterDuff.Mode.SrcIn));
}
public override int GetMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder)
{
int dragFlag = ItemTouchHelper.Up | ItemTouchHelper.Down;
int swipeFlag = ItemTouchHelper.Left | ItemTouchHelper.Right;
return MakeMovementFlags(dragFlag, swipeFlag);
}
public override bool OnMove(RecyclerView recyclerView, RecyclerView.ViewHolder source, RecyclerView.ViewHolder target)
{
if (from == -1)
from = source.AdapterPosition;
to = target.AdapterPosition;
adapter.ItemMoved(source.AdapterPosition, target.AdapterPosition);
return true;
}
public override void OnSwiped(RecyclerView.ViewHolder viewHolder, int direction)
{
//adapter.ItemDismissed(viewHolder.AdapterPosition);
}
public override void OnChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, bool isCurrentlyActive)
{
if (actionState == ItemTouchHelper.ActionStateSwipe)
{
viewHolder.ItemView.TranslationX = dX;
ColorDrawable background = new ColorDrawable(Color.Red);
background.SetBounds(viewHolder.ItemView.Right + (int)dX, viewHolder.ItemView.Top, viewHolder.ItemView.Right, viewHolder.ItemView.Bottom);
background.Draw(c);
c.DrawBitmap(drawable, viewHolder.ItemView.Left + MainActivity.instance.DpToPx(16), viewHolder.ItemView.Top + (viewHolder.ItemView.Bottom - viewHolder.ItemView.Top - drawable.Height) / 2, paint);
c.DrawBitmap(drawable, viewHolder.ItemView.Right + drawable.Width - 20, (viewHolder.ItemView.Top + viewHolder.ItemView.Bottom) / 2, paint);
MainActivity.instance.contentRefresh.SetEnabled(false);
//adapter.DisableRefresh(true);
}
else
base.OnChildDraw(c, recyclerView, viewHolder, dX, dY, actionState, isCurrentlyActive);
}
//public override void OnSelectedChanged(RecyclerView.ViewHolder viewHolder, int actionState)
//{
// if (actionState != ItemTouchHelper.ActionStateIdle)
// {
// if (viewHolder is IItemTouchHolder)
// ((IItemTouchHolder)viewHolder).ItemSelected();
// }
// base.OnSelectedChanged(viewHolder, actionState);
//}
public override void ClearView(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder)
{
DefaultUIUtil.ClearView(viewHolder.ItemView);
}
}
}
@@ -14,7 +14,6 @@ namespace MusicApp.Resources.Portable_Class
public class PlaylistTrackAdapter : RecyclerView.Adapter, IItemTouchAdapter
{
public List<Song> songList;
private bool refreshDisabled = true;
public event EventHandler<int> ItemClick;
public event EventHandler<int> ItemLongClick;
public int listPadding;
@@ -154,15 +153,5 @@ namespace MusicApp.Resources.Portable_Class
//Queue.RemoveFromQueue(songList[position]);
//NotifyItemRemoved(position);
}
public bool RefreshDisabled()
{
return refreshDisabled;
}
public void DisableRefresh(bool disable)
{
refreshDisabled = disable;
}
}
}
@@ -150,6 +150,11 @@ namespace MusicApp.Resources.Portable_Class
Activity.FindViewById<TextView>(Resource.Id.headerTitle).Text = playlistName;
}
public void Delete(Song song, int position)
{
System.Console.WriteLine("Deleting " + song.Title);
}
async void Delete()
{
if(playlistId == 0)
@@ -195,52 +200,55 @@ namespace MusicApp.Resources.Portable_Class
public override void OnStop()
{
if (Player.instance == null)
if (!MainActivity.instance.StateSaved)
{
MainActivity.instance.HideSearch();
if (isEmpty)
{
ViewGroup rootView = Activity.FindViewById<ViewGroup>(Android.Resource.Id.Content);
rootView.RemoveView(emptyView);
}
MainActivity.instance.SupportActionBar.SetHomeButtonEnabled(false);
MainActivity.instance.SupportActionBar.SetDisplayHomeAsUpEnabled(false);
MainActivity.instance.SupportActionBar.SetDisplayShowTitleEnabled(true);
MainActivity.instance.SupportActionBar.Title = "MusicApp";
MainActivity.instance.contentRefresh.Refresh -= OnRefresh;
MainActivity.instance.OnPaddingChanged -= OnPaddingChanged;
Activity.FindViewById<AppBarLayout>(Resource.Id.appbar).RemoveOnOffsetChangedListener(this);
Activity.FindViewById<RelativeLayout>(Resource.Id.playlistHeader).Visibility = ViewStates.Gone;
}
if (YoutubeEngine.instances != null)
{
MainActivity.instance.FindViewById<TabLayout>(Resource.Id.tabs).Visibility = ViewStates.Visible;
Android.Support.V7.Widget.SearchView searchView = (Android.Support.V7.Widget.SearchView)MainActivity.instance.menu.FindItem(Resource.Id.search).ActionView;
searchView.Focusable = false;
MainActivity.instance.menu.FindItem(Resource.Id.search).ExpandActionView();
searchView.SetQuery(YoutubeEngine.searchKeyWorld, false);
searchView.ClearFocus();
int selectedTab = 0;
for (int i = 0; i < YoutubeEngine.instances.Length; i++)
{
if (YoutubeEngine.instances[i].focused)
selectedTab = i;
}
if (Player.instance == null)
{
MainActivity.instance.SupportFragmentManager.BeginTransaction().Attach(YoutubeEngine.instances[selectedTab]).Commit();
MainActivity.instance.SupportFragmentManager.BeginTransaction().Remove(instance).Commit();
}
}
else if (Player.instance == null)
MainActivity.instance.SupportFragmentManager.PopBackStack();
MainActivity.instance.HideSearch();
if (isEmpty)
{
ViewGroup rootView = Activity.FindViewById<ViewGroup>(Android.Resource.Id.Content);
rootView.RemoveView(emptyView);
}
MainActivity.instance.SupportActionBar.SetHomeButtonEnabled(false);
MainActivity.instance.SupportActionBar.SetDisplayHomeAsUpEnabled(false);
MainActivity.instance.SupportActionBar.SetDisplayShowTitleEnabled(true);
MainActivity.instance.SupportActionBar.Title = "MusicApp";
MainActivity.instance.contentRefresh.Refresh -= OnRefresh;
MainActivity.instance.OnPaddingChanged -= OnPaddingChanged;
Activity.FindViewById<AppBarLayout>(Resource.Id.appbar).RemoveOnOffsetChangedListener(this);
Activity.FindViewById<RelativeLayout>(Resource.Id.playlistHeader).Visibility = ViewStates.Gone;
}
if (YoutubeEngine.instances != null)
{
MainActivity.instance.FindViewById<TabLayout>(Resource.Id.tabs).Visibility = ViewStates.Visible;
Android.Support.V7.Widget.SearchView searchView = (Android.Support.V7.Widget.SearchView)MainActivity.instance.menu.FindItem(Resource.Id.search).ActionView;
searchView.Focusable = false;
MainActivity.instance.menu.FindItem(Resource.Id.search).ExpandActionView();
searchView.SetQuery(YoutubeEngine.searchKeyWorld, false);
searchView.ClearFocus();
int selectedTab = 0;
for (int i = 0; i < YoutubeEngine.instances.Length; i++)
{
if (YoutubeEngine.instances[i].focused)
selectedTab = i;
}
if (Player.instance == null)
{
MainActivity.instance?.SupportFragmentManager.BeginTransaction().Attach(YoutubeEngine.instances[selectedTab]).Commit();
MainActivity.instance?.SupportFragmentManager.BeginTransaction().Remove(instance).Commit();
}
}
else if (Player.instance == null)
MainActivity.instance?.SupportFragmentManager.PopBackStack();
instance = null;
}
base.OnStop();
instance = null;
}
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
@@ -252,7 +260,7 @@ namespace MusicApp.Resources.Portable_Class
ListView.SetAdapter(new PlaylistTrackAdapter(new List<Song>()));
ListView.ScrollChange += ListView_ScrollChange;
Android.Support.V7.Widget.Helper.ItemTouchHelper.Callback callback = new PlaylistItemTouch(adapter);
Android.Support.V7.Widget.Helper.ItemTouchHelper.Callback callback = new ItemTouchCallback(adapter);
itemTouchHelper = new Android.Support.V7.Widget.Helper.ItemTouchHelper(callback);
itemTouchHelper.AttachToRecyclerView(ListView);
@@ -167,7 +167,6 @@ namespace MusicApp.Resources.Portable_Class
private void ListView_ItemLongCLick(object sender, int e)
{
MainActivity.instance.contentRefresh.SetEnabled(false);
adapter.DisableRefresh(true);
}
public void More(Song item)
@@ -14,7 +14,6 @@ namespace MusicApp.Resources.Portable_Class
public class RecyclerAdapter : RecyclerView.Adapter, IItemTouchAdapter
{
public List<Song> songList;
private bool refreshDisabled = true;
public event EventHandler<int> ItemClick;
public event EventHandler<int> ItemLongCLick;
public int listPadding;
@@ -96,7 +95,6 @@ namespace MusicApp.Resources.Portable_Class
{
Queue.instance.itemTouchHelper.StartDrag(viewHolder);
MainActivity.instance.contentRefresh.SetEnabled(false);
Queue.instance.adapter.DisableRefresh(true);
};
}
@@ -235,15 +233,5 @@ namespace MusicApp.Resources.Portable_Class
Queue.RemoveFromQueue(songList[position]);
NotifyItemRemoved(position);
}
public bool RefreshDisabled()
{
return refreshDisabled;
}
public void DisableRefresh(bool disable)
{
refreshDisabled = disable;
}
}
}
+143 -152
View File
@@ -3100,8 +3100,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0051
public const int META = 2131361873;
// aapt resource value: 0x7f0a011a
public const int PreferenceScreen = 2131362074;
// aapt resource value: 0x7f0a0117
public const int PreferenceScreen = 2131362071;
// aapt resource value: 0x7f0a0052
public const int SHIFT = 2131361874;
@@ -3109,8 +3109,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0053
public const int SYM = 2131361875;
// aapt resource value: 0x7f0a011b
public const int accountPreference = 2131362075;
// aapt resource value: 0x7f0a0118
public const int accountPreference = 2131362072;
// aapt resource value: 0x7f0a00b1
public const int action = 2131361969;
@@ -3178,8 +3178,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0043
public const int add = 2131361859;
// aapt resource value: 0x7f0a013f
public const int addToQueue = 2131362111;
// aapt resource value: 0x7f0a013d
public const int addToQueue = 2131362109;
// aapt resource value: 0x7f0a0031
public const int adjust_height = 2131361841;
@@ -3229,8 +3229,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a00e0
public const int bottomView = 2131362016;
// aapt resource value: 0x7f0a013b
public const int browseLayout = 2131362107;
// aapt resource value: 0x7f0a0139
public const int browseLayout = 2131362105;
// aapt resource value: 0x7f0a00ae
public const int browseList = 2131361966;
@@ -3244,8 +3244,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a00e7
public const int cancel_action = 2131362023;
// aapt resource value: 0x7f0a0126
public const int cardPlayer = 2131362086;
// aapt resource value: 0x7f0a0123
public const int cardPlayer = 2131362083;
// aapt resource value: 0x7f0a0060
public const int center = 2131361888;
@@ -3307,11 +3307,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0082
public const int default_activity_button = 2131361922;
// aapt resource value: 0x7f0a0141
public const int delete = 2131362113;
// aapt resource value: 0x7f0a0110
public const int deleteButton = 2131362064;
// aapt resource value: 0x7f0a013f
public const int delete = 2131362111;
// aapt resource value: 0x7f0a00ba
public const int design_bottom_sheet = 2131361978;
@@ -3334,14 +3331,14 @@ namespace MusicApp
// aapt resource value: 0x7f0a0108
public const int downFAB = 2131362056;
// aapt resource value: 0x7f0a0146
public const int download = 2131362118;
// aapt resource value: 0x7f0a0144
public const int download = 2131362116;
// aapt resource value: 0x7f0a013d
public const int downloadMDfromYT = 2131362109;
// aapt resource value: 0x7f0a013b
public const int downloadMDfromYT = 2131362107;
// aapt resource value: 0x7f0a0132
public const int edit = 2131362098;
// aapt resource value: 0x7f0a012f
public const int edit = 2131362095;
// aapt resource value: 0x7f0a00a0
public const int edit_query = 2131361952;
@@ -3445,8 +3442,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0063
public const int fill_vertical = 2131361891;
// aapt resource value: 0x7f0a0144
public const int filter = 2131362116;
// aapt resource value: 0x7f0a0142
public const int filter = 2131362114;
// aapt resource value: 0x7f0a0076
public const int fit = 2131361910;
@@ -3469,14 +3466,11 @@ namespace MusicApp
// aapt resource value: 0x7f0a00d1
public const int folderUsed = 2131362001;
// aapt resource value: 0x7f0a0111
public const int foreground = 2131362065;
// aapt resource value: 0x7f0a0073
public const int forever = 2131361907;
// aapt resource value: 0x7f0a0147
public const int fork = 2131362119;
// aapt resource value: 0x7f0a0145
public const int fork = 2131362117;
// aapt resource value: 0x7f0a000a
public const int ghost_view = 2131361802;
@@ -3511,11 +3505,11 @@ namespace MusicApp
// aapt resource value: 0x7f0a0084
public const int icon = 2131361924;
// aapt resource value: 0x7f0a0133
public const int icon1 = 2131362099;
// aapt resource value: 0x7f0a0131
public const int icon1 = 2131362097;
// aapt resource value: 0x7f0a0113
public const int icon_frame = 2131362067;
// aapt resource value: 0x7f0a0110
public const int icon_frame = 2131362064;
// aapt resource value: 0x7f0a00f4
public const int icon_group = 2131362036;
@@ -3556,8 +3550,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0017
public const int line1 = 2131361815;
// aapt resource value: 0x7f0a0137
public const int line2 = 2131362103;
// aapt resource value: 0x7f0a0135
public const int line2 = 2131362101;
// aapt resource value: 0x7f0a0018
public const int line3 = 2131361816;
@@ -3565,8 +3559,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a00d2
public const int lineRecycler = 2131362002;
// aapt resource value: 0x7f0a0115
public const int list = 2131362069;
// aapt resource value: 0x7f0a0112
public const int list = 2131362066;
// aapt resource value: 0x7f0a003a
public const int listMode = 2131361850;
@@ -3574,23 +3568,23 @@ namespace MusicApp
// aapt resource value: 0x7f0a0083
public const int list_item = 2131361923;
// aapt resource value: 0x7f0a011e
public const int localPlay = 2131362078;
// aapt resource value: 0x7f0a011b
public const int localPlay = 2131362075;
// aapt resource value: 0x7f0a00d7
public const int logButton = 2131362007;
// aapt resource value: 0x7f0a0139
public const int masked = 2131362105;
// aapt resource value: 0x7f0a0137
public const int masked = 2131362103;
// aapt resource value: 0x7f0a0125
public const int maxValue = 2131362085;
// aapt resource value: 0x7f0a0122
public const int maxValue = 2131362082;
// aapt resource value: 0x7f0a00e9
public const int media_actions = 2131362025;
// aapt resource value: 0x7f0a0136
public const int message = 2131362102;
// aapt resource value: 0x7f0a0134
public const int message = 2131362100;
// aapt resource value: 0x7f0a00c9
public const int metadataAlbum = 2131361993;
@@ -3616,20 +3610,20 @@ namespace MusicApp
// aapt resource value: 0x7f0a004d
public const int middle = 2131361869;
// aapt resource value: 0x7f0a0124
public const int minValue = 2131362084;
// aapt resource value: 0x7f0a0121
public const int minValue = 2131362081;
// aapt resource value: 0x7f0a006e
public const int mini = 2131361902;
// aapt resource value: 0x7f0a0112
public const int moreButton = 2131362066;
// aapt resource value: 0x7f0a0130
public const int moreButton = 2131362096;
// aapt resource value: 0x7f0a0044
public const int multiply = 2131361860;
// aapt resource value: 0x7f0a013a
public const int musicLayout = 2131362106;
// aapt resource value: 0x7f0a0138
public const int musicLayout = 2131362104;
// aapt resource value: 0x7f0a00bd
public const int navigation_header_container = 2131361981;
@@ -3673,8 +3667,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0075
public const int one = 2131361909;
// aapt resource value: 0x7f0a0135
public const int pager = 2131362101;
// aapt resource value: 0x7f0a0133
public const int pager = 2131362099;
// aapt resource value: 0x7f0a0067
public const int parallax = 2131361895;
@@ -3715,17 +3709,17 @@ namespace MusicApp
// aapt resource value: 0x7f0a00d9
public const int playlistHeader = 2131362009;
// aapt resource value: 0x7f0a013c
public const int playlistLayout = 2131362108;
// aapt resource value: 0x7f0a013a
public const int playlistLayout = 2131362106;
// aapt resource value: 0x7f0a00b4
public const int playlistName = 2131361972;
// aapt resource value: 0x7f0a0121
public const int playlistURL = 2131362081;
// aapt resource value: 0x7f0a011e
public const int playlistURL = 2131362078;
// aapt resource value: 0x7f0a0119
public const int preferenceContent = 2131362073;
// aapt resource value: 0x7f0a0116
public const int preferenceContent = 2131362070;
// aapt resource value: 0x7f0a0006
public const int progress_circular = 2131361798;
@@ -3733,14 +3727,14 @@ namespace MusicApp
// aapt resource value: 0x7f0a0007
public const int progress_horizontal = 2131361799;
// aapt resource value: 0x7f0a011c
public const int queueSwitch = 2131362076;
// aapt resource value: 0x7f0a0120
public const int quickPlay = 2131362080;
// aapt resource value: 0x7f0a0119
public const int queueSwitch = 2131362073;
// aapt resource value: 0x7f0a011d
public const int quickPlayLinear = 2131362077;
public const int quickPlay = 2131362077;
// aapt resource value: 0x7f0a011a
public const int quickPlayLinear = 2131362074;
// aapt resource value: 0x7f0a0097
public const int radio = 2131361943;
@@ -3748,17 +3742,17 @@ namespace MusicApp
// aapt resource value: 0x7f0a00d6
public const int recycler = 2131362006;
// aapt resource value: 0x7f0a0134
public const int refine = 2131362100;
// aapt resource value: 0x7f0a0132
public const int refine = 2131362098;
// aapt resource value: 0x7f0a0140
public const int rename = 2131362112;
// aapt resource value: 0x7f0a013e
public const int rename = 2131362110;
// aapt resource value: 0x7f0a012f
public const int reorder = 2131362095;
// aapt resource value: 0x7f0a012c
public const int reorder = 2131362092;
// aapt resource value: 0x7f0a0143
public const int repeat = 2131362115;
// aapt resource value: 0x7f0a0141
public const int repeat = 2131362113;
// aapt resource value: 0x7f0a0065
public const int right = 2131361893;
@@ -3796,11 +3790,11 @@ namespace MusicApp
// aapt resource value: 0x7f0a0070
public const int scrollable = 2131361904;
// aapt resource value: 0x7f0a0122
public const int search = 2131362082;
// aapt resource value: 0x7f0a011f
public const int search = 2131362079;
// aapt resource value: 0x7f0a0123
public const int searchSuggestions = 2131362083;
// aapt resource value: 0x7f0a0120
public const int searchSuggestions = 2131362080;
// aapt resource value: 0x7f0a00a2
public const int search_badge = 2131361954;
@@ -3832,17 +3826,17 @@ namespace MusicApp
// aapt resource value: 0x7f0a00ab
public const int search_voice_btn = 2131361963;
// aapt resource value: 0x7f0a0116
public const int seekbar = 2131362070;
// aapt resource value: 0x7f0a0113
public const int seekbar = 2131362067;
// aapt resource value: 0x7f0a0117
public const int seekbar_value = 2131362071;
// aapt resource value: 0x7f0a0114
public const int seekbar_value = 2131362068;
// aapt resource value: 0x7f0a00ac
public const int select_dialog_listview = 2131361964;
// aapt resource value: 0x7f0a0145
public const int settings = 2131362117;
// aapt resource value: 0x7f0a0143
public const int settings = 2131362115;
// aapt resource value: 0x7f0a0096
public const int shortcut = 2131361942;
@@ -3859,8 +3853,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0041
public const int showTitle = 2131361857;
// aapt resource value: 0x7f0a0142
public const int shuffle = 2131362114;
// aapt resource value: 0x7f0a0140
public const int shuffle = 2131362112;
// aapt resource value: 0x7f0a00b5
public const int smallLabel = 2131361973;
@@ -3886,35 +3880,35 @@ namespace MusicApp
// aapt resource value: 0x7f0a0107
public const int songTimer = 2131362055;
// aapt resource value: 0x7f0a0128
public const int spArt = 2131362088;
// aapt resource value: 0x7f0a012a
public const int spArtist = 2131362090;
// aapt resource value: 0x7f0a0125
public const int spArt = 2131362085;
// aapt resource value: 0x7f0a0127
public const int spContainer = 2131362087;
public const int spArtist = 2131362087;
// aapt resource value: 0x7f0a012d
public const int spLast = 2131362093;
// aapt resource value: 0x7f0a0124
public const int spContainer = 2131362084;
// aapt resource value: 0x7f0a012b
public const int spNext = 2131362091;
// aapt resource value: 0x7f0a012a
public const int spLast = 2131362090;
// aapt resource value: 0x7f0a012c
public const int spPlay = 2131362092;
// aapt resource value: 0x7f0a012e
public const int spProgress = 2131362094;
// aapt resource value: 0x7f0a0128
public const int spNext = 2131362088;
// aapt resource value: 0x7f0a0129
public const int spTitle = 2131362089;
public const int spPlay = 2131362089;
// aapt resource value: 0x7f0a012b
public const int spProgress = 2131362091;
// aapt resource value: 0x7f0a0126
public const int spTitle = 2131362086;
// aapt resource value: 0x7f0a0086
public const int spacer = 2131361926;
// aapt resource value: 0x7f0a0114
public const int spinner = 2131362068;
// aapt resource value: 0x7f0a0111
public const int spinner = 2131362065;
// aapt resource value: 0x7f0a0008
public const int split_action_bar = 2131361800;
@@ -3934,8 +3928,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0066
public const int start = 2131361894;
// aapt resource value: 0x7f0a0130
public const int status = 2131362096;
// aapt resource value: 0x7f0a012d
public const int status = 2131362093;
// aapt resource value: 0x7f0a00e8
public const int status_bar_latest_event_content = 2131362024;
@@ -3949,8 +3943,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a007a
public const int surface_view = 2131361914;
// aapt resource value: 0x7f0a0118
public const int switchWidget = 2131362072;
// aapt resource value: 0x7f0a0115
public const int switchWidget = 2131362069;
// aapt resource value: 0x7f0a003c
public const int tabMode = 2131361852;
@@ -4030,8 +4024,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0013
public const int transition_transform = 2131361811;
// aapt resource value: 0x7f0a013e
public const int undoChange = 2131362110;
// aapt resource value: 0x7f0a013c
public const int undoChange = 2131362108;
// aapt resource value: 0x7f0a0049
public const int uniform = 2131361865;
@@ -4048,8 +4042,8 @@ namespace MusicApp
// aapt resource value: 0x7f0a0016
public const int view_offset_helper = 2131361814;
// aapt resource value: 0x7f0a0138
public const int visible = 2131362104;
// aapt resource value: 0x7f0a0136
public const int visible = 2131362102;
// aapt resource value: 0x7f0a0036
public const int wide = 2131361846;
@@ -4060,11 +4054,11 @@ namespace MusicApp
// aapt resource value: 0x7f0a004a
public const int wrap_content = 2131361866;
// aapt resource value: 0x7f0a0131
public const int youtubeIcon = 2131362097;
// aapt resource value: 0x7f0a012e
public const int youtubeIcon = 2131362094;
// aapt resource value: 0x7f0a011f
public const int ytPlay = 2131362079;
// aapt resource value: 0x7f0a011c
public const int ytPlay = 2131362076;
// aapt resource value: 0x7f0a00d5
public const int ytProgress = 2131362005;
@@ -4399,112 +4393,109 @@ namespace MusicApp
public const int PlaylistSmallHeader = 2130903128;
// aapt resource value: 0x7f030059
public const int PlaylistSong = 2130903129;
public const int preference = 2130903129;
// aapt resource value: 0x7f03005a
public const int preference = 2130903130;
public const int preference_category = 2130903130;
// aapt resource value: 0x7f03005b
public const int preference_category = 2130903131;
public const int preference_dialog_edittext = 2130903131;
// aapt resource value: 0x7f03005c
public const int preference_dialog_edittext = 2130903132;
public const int preference_dropdown = 2130903132;
// aapt resource value: 0x7f03005d
public const int preference_dropdown = 2130903133;
public const int preference_information = 2130903133;
// aapt resource value: 0x7f03005e
public const int preference_information = 2130903134;
public const int preference_list_fragment = 2130903134;
// aapt resource value: 0x7f03005f
public const int preference_list_fragment = 2130903135;
public const int preference_recyclerview = 2130903135;
// aapt resource value: 0x7f030060
public const int preference_recyclerview = 2130903136;
public const int preference_widget_checkbox = 2130903136;
// aapt resource value: 0x7f030061
public const int preference_widget_checkbox = 2130903137;
public const int preference_widget_seekbar = 2130903137;
// aapt resource value: 0x7f030062
public const int preference_widget_seekbar = 2130903138;
public const int preference_widget_switch_compat = 2130903138;
// aapt resource value: 0x7f030063
public const int preference_widget_switch_compat = 2130903139;
public const int PreferenceContent = 2130903139;
// aapt resource value: 0x7f030064
public const int PreferenceContent = 2130903140;
public const int Preferences = 2130903140;
// aapt resource value: 0x7f030065
public const int Preferences = 2130903141;
public const int PreferenceToolbar = 2130903141;
// aapt resource value: 0x7f030066
public const int PreferenceToolbar = 2130903142;
public const int QueueFooter = 2130903142;
// aapt resource value: 0x7f030067
public const int QueueFooter = 2130903143;
public const int QuickPlayLayout = 2130903143;
// aapt resource value: 0x7f030068
public const int QuickPlayLayout = 2130903144;
public const int RecyclerFragment = 2130903144;
// aapt resource value: 0x7f030069
public const int RecyclerFragment = 2130903145;
public const int SaveAPlaylist = 2130903145;
// aapt resource value: 0x7f03006a
public const int SaveAPlaylist = 2130903146;
public const int search_layout = 2130903146;
// aapt resource value: 0x7f03006b
public const int search_layout = 2130903147;
public const int SearchLayout = 2130903147;
// aapt resource value: 0x7f03006c
public const int SearchLayout = 2130903148;
public const int SeekbarPreference = 2130903148;
// aapt resource value: 0x7f03006d
public const int SeekbarPreference = 2130903149;
public const int select_dialog_item_material = 2130903149;
// aapt resource value: 0x7f03006e
public const int select_dialog_item_material = 2130903150;
public const int select_dialog_multichoice_material = 2130903150;
// aapt resource value: 0x7f03006f
public const int select_dialog_multichoice_material = 2130903151;
public const int select_dialog_singlechoice_material = 2130903151;
// aapt resource value: 0x7f030070
public const int select_dialog_singlechoice_material = 2130903152;
public const int smallLoading = 2130903152;
// aapt resource value: 0x7f030071
public const int smallLoading = 2130903153;
public const int SmallPlayer = 2130903153;
// aapt resource value: 0x7f030072
public const int SmallPlayer = 2130903154;
public const int SongList = 2130903154;
// aapt resource value: 0x7f030073
public const int SongList = 2130903155;
public const int SquareSong = 2130903155;
// aapt resource value: 0x7f030074
public const int SquareSong = 2130903156;
public const int SuggestionLayout = 2130903156;
// aapt resource value: 0x7f030075
public const int SuggestionLayout = 2130903157;
public const int support_simple_spinner_dropdown_item = 2130903157;
// aapt resource value: 0x7f030076
public const int support_simple_spinner_dropdown_item = 2130903158;
public const int tabs = 2130903158;
// aapt resource value: 0x7f030077
public const int tabs = 2130903159;
public const int TimerLayout = 2130903159;
// aapt resource value: 0x7f030078
public const int TimerLayout = 2130903160;
public const int tooltip = 2130903160;
// aapt resource value: 0x7f030079
public const int tooltip = 2130903161;
public const int TwoLineLayout = 2130903161;
// aapt resource value: 0x7f03007a
public const int TwoLineLayout = 2130903162;
public const int ViewPager = 2130903162;
// aapt resource value: 0x7f03007b
public const int ViewPager = 2130903163;
// aapt resource value: 0x7f03007c
public const int YtList = 2130903164;
public const int YtList = 2130903163;
static Layout()
{
@@ -1,62 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="8dp" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/holo_red_light" >
<ImageButton
android:layout_width="36dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@drawable/Delete"
android:id="@+id/deleteButton"/>
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/foreground">
<ImageView
android:id="@+id/albumArt"
android:layout_width="90dp"
android:layout_height="90dp"
android:padding="5dp"
android:gravity="center"
android:layout_alignParentLeft="true"
android:src="@drawable/MusicIcon" />
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textLayout"
android:paddingLeft="100dp">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16dip"
android:textColor="#000"
android:textStyle="bold" />
<TextView
android:id="@+id/artist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dip"
android:textColor="#000" />
</LinearLayout>
<ImageView
android:id="@+id/moreButton"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:clickable="true"
android:background="@null"
android:src="@drawable/ic_more_vert_black_24dp"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:layout_alignParentRight="true" />
</RelativeLayout>
</RelativeLayout >