2016-03-06 28 views
1

我有2個活動,一個顯示視頻列表,另一個活動顯示使用YoutubePlayerView.I使用onClick按鈕時打開一個新的活動與youtubeplayerview.Now我沒有打開一個新的活動總是爲一個新的視頻,我想通過YouTube視頻作爲參數,這樣它就不需要很多活動,只需使用一個活動來顯示所有的視頻。我的代碼如下所示。如何將YouTube視頻網址傳遞給Android Studios中的新活動?

  1. 使用意圖點擊新活動。

    public void videoTitaniumOnClick(View view){ 
         Intent i=new Intent(this,videoGenerator.class); 
         startActivity(i); 
    
        } 
    
  2. Youtube video class Code。

    public class videoGenerator extends YouTubeBaseActivity implements OnInitializedListener { 
        public static final String API_KEY = "XXXXXXXXXXXX"; 
        public static final String VideoTitanium = "ySQoAiWPXHE"; 
        @Override 
        public boolean onCreateOptionsMenu(Menu menu) 
        { 
         getMenuInflater().inflate(R.menu.menu, menu); 
         return true; 
        } 
    
    
        @Override 
        protected void onCreate(Bundle savedInstanceState) { 
         super.onCreate(savedInstanceState); 
         setContentView(R.layout.activity_video_generator); 
    
         /** Initializing YouTube player view **/ 
         YouTubePlayerView youTubePlayerView = (YouTubePlayerView)   findViewById(R.id.Youtube); 
         youTubePlayerView.initialize(API_KEY, this); 
        } 
    
        @Override 
        public void onInitializationSuccess(Provider provider, YouTubePlayer player, boolean wasRestored) { 
    
         /** add listeners to YouTubePlayer instance **/ 
         /** Start buffering **/ 
         if (!wasRestored) { 
          player.cueVideo(VideoTitanium); 
         } 
    
        } 
    
        @Override 
        public void onInitializationFailure(Provider provider, YouTubeInitializationResult youTubeInitializationResult) { 
    
         Toast.makeText(this, "Failured to Initialize Your Video.Check if you have a proper internet!", Toast.LENGTH_LONG).show(); 
    
        } 
    } 
    

    很抱歉,如果事情是錯的indentation.Expect的答案是有點清楚,因爲我是新來的Java和Android, 三江源。

回答

2

使用intent.putExtra(key, value)

此方法重載,需要各種類型的第二個參數:整型,字節,字符串,不同的陣列..

所以你的方法是:

public void videoTitaniumOnClick(View view){ 
     Intent i=new Intent(this,videoGenerator.class); 
     i.putExtra("url_key", url); 
     startActivity(i); 
} 

存儲您想要傳遞給另一個活動的youtube視頻的地址,點擊按鈕t如果我使用putExtra() method來傳遞數據,如上所示。

要獲得其活動要使用URL網址:

String url= getIntent().getStringExtra("url_key"); 
+0

三江源費薩爾·謝赫它幾乎工作,但對於URL,就顯示爲「無法解析符號鏈接」難道我還需要在這個類中聲明並初始化它.. –

+0

它就像: 'i.putExtra(「url_key」,「www.youtube.com/v=454erws」); ' 在url變量中存儲youtube視頻的地址。 –

+0

我編輯了我的答案來解釋你..檢查它。 –

相關問題