BDMusicActivity.java :  » UnTagged » stride-android » team » stride » database » crud » music » Android Open Source

Android Open Source » UnTagged » stride android 
stride android » team » stride » database » crud » music » BDMusicActivity.java
package team.stride.database.crud.music;

import java.util.ArrayList;
import java.util.List;

import team.stride.R;
import team.stride.database.StrideDB;
import team.stride.database.crud.music.MusicItem;
import android.app.Activity;
import android.app.Dialog;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.database.Cursor;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;

public class BDMusicActivity extends Activity
{
  static final int MODIFY_DIALOG = 0;
  private List<MusicItem> recordsList;
  private ListView listLV;
  private MusicAdapter adapter;
  private Dialog modifDialog;

  @Override
  public void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.bd_music_layout);
    initDialog();
    listLV = (ListView) findViewById(R.id.musicListView);

    recordsList = new ArrayList<MusicItem>();
    adapter = new MusicAdapter(this, recordsList);
    listLV.setAdapter(adapter);
  }

  @Override
  public void onResume()
  {
    super.onResume();
    recordsList.clear();
    Cursor cursor = managedQuery(StrideDB.CONTENT_URI_MUSIC, null, null, null, null);
    while (cursor.moveToNext())
    {
      final int id_index = cursor.getColumnIndex(StrideDB.ID_M);
      final int song_index = cursor.getColumnIndex(StrideDB.SONG_M);
      final int singer_index = cursor.getColumnIndex(StrideDB.SINGER_M);
      final int playlist_index = cursor.getColumnIndex(StrideDB.PLAYLIST_M);
      final int file_index = cursor.getColumnIndex(StrideDB.FILE_M);
      final int details_index = cursor.getColumnIndex(StrideDB.DETAILS_M);

      int id = cursor.getInt(id_index);
      String song = cursor.getString(song_index);
      String singer = cursor.getString(singer_index);
      String playlist = cursor.getString(playlist_index);
      String file = cursor.getString(file_index);
      String details = cursor.getString(details_index);

      recordsList.add(new MusicItem(id, song, singer, playlist, file, details));
    }
    cursor.close();
    adapter.notifyDataSetChanged();
  }
  

  private void initDialog()
  {
    modifDialog = new Dialog(this);
    modifDialog.setContentView(R.layout.bd_music_modify);
    modifDialog.setTitle("Modify a Music Entry");
    modifDialog.setCancelable(true);
    modifDialog.setCanceledOnTouchOutside(true);
  }
  
  @Override
  protected Dialog onCreateDialog(int id)
  {
    switch (id)
    {
    case MODIFY_DIALOG:
      return modifDialog;
    }
    return null;
  }

  public void showDialog(int modifyDialog, MusicItem entry)
  {
    refreshDialog(entry);
    showDialog(MODIFY_DIALOG);
  }

  private void refreshDialog(final MusicItem entry)
  {
    final EditText song = (EditText) modifDialog.findViewById(R.id.musicModifySong);
    song.setText(entry.getSong());
    
    final EditText singer = (EditText) modifDialog.findViewById(R.id.musicModifySinger);
    singer.setText(entry.getSinger());
    
    final EditText file = (EditText) modifDialog.findViewById(R.id.musicModifyFile);
    file.setText(entry.getDetails());

    final EditText playlist = (EditText) modifDialog.findViewById(R.id.musicModifyPlaylist);
    playlist.setText(entry.getDetails());
    
    final EditText details = (EditText) modifDialog.findViewById(R.id.musicModifyDetails);
    details.setText(entry.getDetails());
    
    Button okBtn = (Button) modifDialog.findViewById(R.id.musicModifyOk);
    okBtn.setOnClickListener(new OnClickListener()
    {
      @Override
      public void onClick(View v)
      {
        entry.setFile(file.getText().toString());
        entry.setSong(song.getText().toString());
        entry.setSinger(singer.getText().toString());
        entry.setPlaylist(playlist.getText().toString());
        entry.setDetails(details.getText().toString());
        adapter.notifyDataSetChanged();
        
        final ContentResolver cr = v.getContext().getContentResolver();
        ContentValues values = new ContentValues();
        values.put(StrideDB.SONG_M, song.getText().toString());
        values.put(StrideDB.SINGER_M, singer.getText().toString());
        values.put(StrideDB.FILE_M, file.getText().toString());
        values.put(StrideDB.PLAYLIST_M, playlist.getText().toString());
        values.put(StrideDB.DETAILS_M, details.getText().toString());
        cr.update(StrideDB.CONTENT_URI_MUSIC, values, StrideDB.ID_M + " = " + entry.getId(), null);
        modifDialog.dismiss();
      }
    });
    
  }
  
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.