Optimized layouts and bugfix

Optimized song and artist list item layouts
Hopefully fixed a NPE when deleting a track
This commit is contained in:
Karim Abou Zeid 2015-03-24 17:27:54 +01:00
commit 31f794336a
8 changed files with 28 additions and 39 deletions

View file

@ -61,6 +61,7 @@ dependencies {
compile 'com.squareup.okhttp:okhttp:2.2.0'
compile files('../libs/jaudiotagger-2.0.4-20111207.115108-15.jar')
compile 'asia.ivity.android:drag-sort-listview:1.0'
compile 'de.hdodenhof:circleimageview:1.2.2'
compile('com.crashlytics.sdk.android:crashlytics:2.2.1@aar') {
transitive = true;
}

View file

@ -57,6 +57,7 @@ public class ArtistAdapter extends RecyclerView.Adapter<ArtistAdapter.ViewHolder
public void onArtistThumbnailUrlLoaded(String url) {
Picasso.with(activity)
.load(url)
.noFade()
.placeholder(R.drawable.default_artist_image)
.into(holder.artistImage);
}

View file

@ -2,10 +2,10 @@ package com.kabouzeid.gramophone.ui.fragments.mainactivityfragments;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.support.v7.widget.RecyclerView;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.AlbumAdapter;
@ -20,14 +20,10 @@ public class AlbumViewFragment extends AbsMainActivityFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_album_view, container, false);
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
View view = inflater.inflate(R.layout.fragment_album_view, container, false);
recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
setUpRecyclerView();
return view;
}
private void setUpRecyclerView() {

View file

@ -131,8 +131,8 @@ public class MusicUtil {
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
final String name = cursor.getString(1);
final File f = new File(name);
try { // File.delete can throw a security exception
final File f = new File(name);
if (!f.delete()) {
// I'm not sure if we'd ever get here (deletion would
// have to fail, but no exception thrown)
@ -141,6 +141,8 @@ public class MusicUtil {
cursor.moveToNext();
} catch (final SecurityException ex) {
cursor.moveToNext();
} catch (NullPointerException e){
Log.e("MusicUtils", "Failed to find file " + name);
}
}
cursor.close();

View file

@ -3,14 +3,12 @@
android:id="@+id/fragment_album_view"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="2dp">
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:padding="2dp"
android:scrollbars="vertical"/>
</LinearLayout>

View file

@ -2,25 +2,26 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_height="72dp"
android:background="?rect_selector"
android:orientation="horizontal"
android:paddingLeft="16dp"
android:paddingRight="16dp">
<com.kabouzeid.gramophone.view.SquareImageView
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/artist_image"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_gravity="center"
android:gravity="center"
android:scaleType="centerCrop"
/>
android:scaleType="centerCrop"/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_weight="1"
android:orientation="vertical">
@ -28,8 +29,6 @@
android:id="@+id/artist_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Body2"/>
@ -38,8 +37,6 @@
android:id="@+id/artist_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"/>

View file

@ -2,21 +2,22 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_height="72dp"
android:descendantFocusability="blocksDescendants"
android:orientation="horizontal"
android:paddingLeft="16dp">
<com.kabouzeid.gramophone.view.SquareImageView
android:id="@+id/album_art"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_gravity="center"
android:gravity="center"
android:scaleType="centerCrop"
/>
android:scaleType="centerCrop"/>
<LinearLayout
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
@ -27,8 +28,6 @@
android:id="@+id/song_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Body2"/>
@ -37,8 +36,6 @@
android:id="@+id/song_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"/>

View file

@ -2,7 +2,7 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_height="72dp"
android:background="?rect_selector"
android:descendantFocusability="blocksDescendants"
android:orientation="horizontal"
@ -10,17 +10,18 @@
<com.kabouzeid.gramophone.view.SquareImageView
android:id="@+id/album_art"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_gravity="center"
android:gravity="center"
android:scaleType="centerCrop"
/>
android:scaleType="centerCrop"/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_weight="1"
android:orientation="vertical">
@ -28,8 +29,6 @@
android:id="@+id/song_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Body2"/>
@ -38,8 +37,6 @@
android:id="@+id/song_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"/>