我试图在文本视图上制作动画,当它被按下时。
文本视图在顶部扩展以填充屏幕。
以下两张图片显示了我按下之前和之后的文本视图。
如您所见,在更改约束布局(做动画)时,文本会向下跳。
红点,textView 中的一个 drawable 应该遵循,但文本行为错误。我附上了 onclick 方法调用的动画代码。它改变了 textview 中的约束。
注意:mapsContainer 是包含谷歌地图和菜单栏的容器。searchDummmy 是文本视图。
guidelineText 是一条线,用于设置 searchdummy 的高度。
private void animateSearchDummy() {
searchDummyConsttraints.clone((ConstraintLayout) fragmentView.findViewById(R.id.mapsContainer));
AutoTransition t = new AutoTransition();
t.setDuration(5000);
TransitionManager.beginDelayedTransition((ConstraintLayout) fragmentView.findViewById(R.id.mapsContainer), t);
searchDummyConsttraints.clear(R.id.searchDummy);
searchDummyConsttraints.constrainHeight(R.id.searchDummy, 0);
searchDummyConsttraints.connect(R.id.searchDummy, ConstraintSet.BOTTOM, R.id.guidelineTest, ConstraintSet.TOP, 0);
searchDummyConsttraints.connect(R.id.searchDummy, ConstraintSet.LEFT, R.id.mapsContainer, ConstraintSet.LEFT,0);
searchDummyConsttraints.connect(R.id.searchDummy, ConstraintSet.RIGHT, R.id.mapsContainer, ConstraintSet.RIGHT,0);
searchDummyConsttraints.connect(R.id.searchDummy, ConstraintSet.TOP, R.id.mapsContainer, ConstraintSet.TOP,0);
searchDummyConsttraints.applyTo((ConstraintLayout) fragmentView.findViewById(R.id.mapsContainer));
}
Run Code Online (Sandbox Code Playgroud)
还附上了该视图的 xml 文件。
private void animateSearchDummy() {
searchDummyConsttraints.clone((ConstraintLayout) fragmentView.findViewById(R.id.mapsContainer));
AutoTransition t = new AutoTransition();
t.setDuration(5000);
TransitionManager.beginDelayedTransition((ConstraintLayout) fragmentView.findViewById(R.id.mapsContainer), t);
searchDummyConsttraints.clear(R.id.searchDummy);
searchDummyConsttraints.constrainHeight(R.id.searchDummy, 0); …Run Code Online (Sandbox Code Playgroud) animation android textview android-layout android-constraintlayout