Change button icons depending on state
This commit is contained in:
parent
9a97a86f28
commit
a657211788
|
@ -10,6 +10,7 @@ import android.view.Menu;
|
|||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
|
@ -69,7 +70,7 @@ public class MainActivity extends AppCompatActivity {
|
|||
SharedPreferences settings = context.getSharedPreferences(
|
||||
context.getApplicationContext().getPackageName() + "_preferences", 0);
|
||||
String host = settings.getString("pref_host", "");
|
||||
if (host.equals("")) {
|
||||
if (host == null || host.equals("")) {
|
||||
Toast.makeText(context, "No host set", Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
}
|
||||
|
@ -81,7 +82,21 @@ public class MainActivity extends AppCompatActivity {
|
|||
if (response.length() > 0) {
|
||||
try {
|
||||
String current = response.getString("artist") + " - " + response.getString("title");
|
||||
((TextView)findViewById(R.id.currentlyPlayingText)).setText(current);
|
||||
TextView statusTextView = findViewById(R.id.currentlyPlayingText);
|
||||
ImageButton playButton = findViewById(R.id.playButton);
|
||||
ImageButton shuffleButton = findViewById(R.id.shuffleButton);
|
||||
|
||||
statusTextView.setText(current);
|
||||
if (response.getBoolean("playing")) {
|
||||
playButton.setImageResource(R.drawable.ic_pause_black_24dp);
|
||||
} else {
|
||||
playButton.setImageResource(R.drawable.ic_play_arrow_black_24dp);
|
||||
}
|
||||
if (response.getBoolean("shuffle")) {
|
||||
shuffleButton.setColorFilter(getColor(R.color.colorAccent), android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
} else {
|
||||
shuffleButton.setColorFilter(getColor(R.color.colorForeground), android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
@ -89,7 +104,10 @@ public class MainActivity extends AppCompatActivity {
|
|||
}
|
||||
}, new Response.ErrorListener() {
|
||||
@Override
|
||||
public void onErrorResponse(VolleyError error) {
|
||||
public void onErrorResponse(VolleyError volleyError) {
|
||||
if(volleyError.networkResponse != null && volleyError.networkResponse.data != null){
|
||||
Toast.makeText(context, volleyError.networkResponse.statusCode, Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -119,36 +137,36 @@ public class MainActivity extends AppCompatActivity {
|
|||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_main);
|
||||
|
||||
final Context context = this;
|
||||
final MainActivity context = this;
|
||||
|
||||
View.OnClickListener buttonClickListener = new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
switch (v.getId()) {
|
||||
case R.id.muteButton:
|
||||
((MainActivity)context).sendRequest("mute", context);
|
||||
context.sendRequest("mute", context);
|
||||
break;
|
||||
case R.id.volDownButton:
|
||||
((MainActivity)context).sendRequest("vol_down", context);
|
||||
context.sendRequest("vol_down", context);
|
||||
break;
|
||||
case R.id.volUpButton:
|
||||
((MainActivity)context).sendRequest("vol_up", context);
|
||||
context.sendRequest("vol_up", context);
|
||||
break;
|
||||
case R.id.prevButton:
|
||||
((MainActivity)context).sendRequest("prev", context);
|
||||
((MainActivity)context).sendRequest("query", context);
|
||||
context.sendRequest("prev", context);
|
||||
context.sendRequest("query", context);
|
||||
break;
|
||||
case R.id.playButton:
|
||||
((MainActivity)context).sendRequest("play", context);
|
||||
((MainActivity)context).sendRequest("query", context);
|
||||
context.sendRequest("play", context);
|
||||
context.sendRequest("query", context);
|
||||
break;
|
||||
case R.id.nextButton:
|
||||
((MainActivity)context).sendRequest("next", context);
|
||||
((MainActivity)context).sendRequest("query", context);
|
||||
context.sendRequest("next", context);
|
||||
context.sendRequest("query", context);
|
||||
break;
|
||||
case R.id.shuffleButton:
|
||||
((MainActivity)context).sendRequest("shuffle", context);
|
||||
((MainActivity)context).sendRequest("query", context);
|
||||
context.sendRequest("shuffle", context);
|
||||
context.sendRequest("query", context);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:pathData="M6,19h4L10,5L6,5v14zM14,5v14h4L18,5h-4z"/>
|
||||
</vector>
|
|
@ -64,11 +64,11 @@
|
|||
android:contentDescription="@string/play"
|
||||
android:scaleX="2"
|
||||
android:scaleY="2"
|
||||
android:src="@drawable/ic_play_arrow_black_24dp"
|
||||
android:tint="@color/colorForeground"
|
||||
app:layout_constraintEnd_toStartOf="@+id/prevButton"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/muteButton"
|
||||
app:srcCompat="@drawable/ic_play_arrow_black_24dp" />
|
||||
app:layout_constraintTop_toBottomOf="@+id/muteButton" />
|
||||
|
||||
<ImageButton
|
||||
android:id="@+id/prevButton"
|
||||
|
@ -112,11 +112,11 @@
|
|||
android:contentDescription="@string/next"
|
||||
android:scaleX="2"
|
||||
android:scaleY="2"
|
||||
android:src="@drawable/ic_shuffle_black_24dp"
|
||||
android:tint="@color/colorForeground"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/nextButton"
|
||||
app:layout_constraintTop_toBottomOf="@+id/volUpButton"
|
||||
app:srcCompat="@drawable/ic_shuffle_black_24dp" />
|
||||
app:layout_constraintTop_toBottomOf="@+id/volUpButton" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/currentlyPlayingText"
|
||||
|
|
Loading…
Reference in New Issue