2016-02-11 104 views
0

經過數小時的嘗試,我仍然努力在Android中使用「changeBounds」構建共享元素轉換,其中移動的元素不是單擊的按鈕。在MainActivity.java這是我試過到目前爲止代碼:簡單共享元素轉換的示例代碼android

public void onButtonNextClick(View v) { 
    v.setTransitionName("transition1"); 
    ActivityOptionsCompat optionsCompat=ActivityOptionsCompat.makeSceneTransitionAnimation(this, v, v.getTransitionName()); 
    if (v.getId() == R.id.Bnext) { 
     Intent i = new Intent(MainActivity.this, SecondActivity.class); 
     startActivity(i, optionsCompat.toBundle()); 
    } 
} 

我真的很感激任何幫助。我想只有幾行需要改變。

回答

0

你在做什麼,這是:

你告訴Android的設置按鈕,您SharedElement

v.setTransitionName("transition1"); 
ActivityOptionsCompat optionsCompat=ActivityOptionsCompat.makeSceneTransitionAnimation(this, v, v.getTransitionName()); 

你設置這是您的Buttonv過渡。

你需要做的:

比方說,你想動畫的ImageView的,你可以做到以下幾點:

public void onButtonNextClick(View view) { 
    View imageView = findViewById(R.id.imageView); 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
      imageView.setTransitionName(「<your-transition-name>」); 
      ActivityOptionsCompat options = ActivityOptionsCompat. 
        makeSceneTransitionAnimation(this, imageView, imageView.getTransitionName()); 
      startActivity(intent, options.toBundle()); 
     } 
     else { 
      startActivity(intent); 
     } 
    } 
+0

太感謝你了,幫助了很多:)。顯然,我的選票還沒有統計,爲此。 –

+0

嘿沒有後顧之憂。很高興它有幫助。 – Nerd