makeSceneTransitionAnimation不起作用?

时间:2015-11-27 12:55:37

标签: android animation transition

我正在尝试在我的代码中执行makeSceneTransitionAnimation但它没有'似乎工作(它告诉我该方法无法解决)。这是我的代码:

public class MainActivity extends Activity {

GridView gridview_id;
RelativeLayout second_activity_layout;
public int[] image_id = {R.drawable.banana, R.drawable.kiwi, R.drawable.oatmeal, R.drawable.coconut};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    gridview_id = (GridView) findViewById(R.id.gridview_id);
    second_activity_layout = (RelativeLayout) findViewById(R.id.second_activity_layout);


    gridview_id.setAdapter(new objectAdapter(this));
    gridview_id.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id){
         Intent intent = new Intent (view.getContext(), SecondActivity.class);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                ActivityOptionsCompat options = ActivityOptions.makeSceneTransitionAnimation(MainActivity.this,(image_id[position]) , getString(R.string.banana_transition));
                startActivity(intent, options.toBundle());

            }
            else{
                startActivity(intent);
            }
        }
    });
}
}

让事情变得更加清晰:我的GridView中有一个MainActivity,其中包含可点击的图片,当按下图片时,我希望该特定图片显示在我的SecondActivity中}。

如果您有解决方案,请告诉我,这对我有帮助。

-Vidal

1 个答案:

答案 0 :(得分:0)

您可以使用此方法的“compat”变体:

ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(MainActivity.this,(image_id[position]) , getString(R.string.banana_transition));
ActivityCompat.startActivity(MainActivity.this, intent, options.toBundle());