簡體   English   中英

在Android中正確傳遞數據?

[英]Passing data properly in android?

我的第一次活動是這樣的:

    private AdapterView.OnItemClickListener _itemClickLis = new OnItemClickListener() 
    {
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) 
    {
        // Now we want to actually get the data location of the file
        String [] proj={MEDIA_DATA};
        // We request our cursor again
        _cursor = managedQuery(_contentUri,
                proj, // Which columns to return
                null,       // WHERE clause; which rows to return (all rows)
                null,       // WHERE clause selection arguments (none)
                null); // Order-by clause (ascending by name)
        // We want to get the column index for the data uri
        int count = _cursor.getCount();
        //
        _cursor.moveToFirst();
        //
        _columnIndex = _cursor.getColumnIndex(MEDIA_DATA);
        // Lets move to the selected item in the cursor
        _cursor.moveToPosition(position);
        // And here we get the filename
        String filename = _cursor.getString(_columnIndex);
        //*********** You can do anything when you know the file path :-)
        showToast(filename);

        Intent i = new Intent("com.ave.EDITORSCREEN");
        i.putExtra("mnt/sdcard-ext", _ID);
        startActivity(i);

    }

這不是完整的代碼,而是完整的代碼,可從sd卡中收集所有視頻縮略圖,並將其連同其路徑一起顯示(以吐司方式)。 我希望能夠單擊縮略圖並將數據傳遞到下一個活動進行播放,停止,暫停等。您可以看到我在第一個活動中將數據傳遞到的位置:

public class Editor extends Activity {
ImageButton video1;
int isClicked = 0;
ImageButton audio;
int isClicked1 = 0;

    @Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.editor);

    video1 = (ImageButton) findViewById(R.id.video1);
    video1.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            if (isClicked == 0) {
                video1.setImageResource(R.drawable.video_pressed);
                isClicked = 1;
            } else {
                video1.setImageResource(R.drawable.video1);
                isClicked = 0;
            }
          }
     });

    audio = (ImageButton) findViewById(R.id.audio);
    audio.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            if (isClicked1 == 0) {
                audio.setImageResource(R.drawable.audio_pressed);
                isClicked1 = 1;
            } else {
                audio.setImageResource(R.drawable.audio);
                isClicked1 = 0;
            }
          }
      });
    }
}

我想得到我需要放的數據

String data = getIntent().getStringExtra("mnt/sdcard-ext");

但是onCreate方法在哪里? 還是這是獲取傳遞數據的正確方法? 最后,我該如何播放視頻? 有說視頻播放器的某種代碼嗎? 如果是這樣,我將在最終活動中將其放置在哪里?

您不必在onCreate()方法中執行此操作,但是為什么不這樣做呢? 你還會把它放在哪里?

如果您正在尋找任何類型的文檔,我建議您查看Android Developers Java(Android)Doc 一般而言, Android開發人員都有一個關於Android的絕佳網站。 我認為這里是開始使用Android 音頻/視頻的好地方。

通常,您可以在onCreate()設置MediaPlayer界面的布局(播放/暫停按鈕和視圖onCreate() ,還可以設置單擊/觸摸監聽器,以在收到輸入時執行。

對於第一門編程課程,您似乎做得不錯。 祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM