inspired by Pedro V. Gomez
public class SongsFragment extends BaseFragment implements AdapterView.OnItemClickListener {
/**
* Interface for listening songs list events.
*/
interface SongsListener {
void onSongClicked(SongEntity songEntity);
}
private SongsListener songsListener;
....
@Override public void onAttach(Context context) {
super.onAttach(context);
if (activity instanceof SongsActivity) {
this.songsListener = (SongsListener) context;
}
}
....
@Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
SongEntity songEntity = (SongEntity) songsAdapter.getItem(position);
if (songEntity != null) {
this.songsListener.onSongClicked(songEntity);
}
}
}package com.architecture.babypadawans.views.songs;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import com.architecture.babypadawans.R;
import com.architecture.babypadawans.entities.song.SongEntity;
import com.architecture.babypadawans.managers.SessionManager;
import com.architecture.babypadawans.views.BaseActivity;
public class SongsActivity extends BaseActivity implements SongsFragment.SongsListener {
.......
@Override
public void onSongClicked(SongEntity songEntity) {
//do something
}
}
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#00FF00"
android:typeface="monospace"
android:text="@string/hello" /><style name="CodeFont" parent="@android:style/TextAppearance.Medium">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#00FF00</item>
<item name="android:typeface">monospace</item>
</style><TextView
style="@style/CodeFont"
android:text="@string/hello" /><style name="CodeFont.Red">
<item name="android:textColor">#FF0000</item>
</style>
<style name="CodeFont.Red.Big">
<item name="android:textSize">30sp</item>
</style>