Android搜索框切换动画
时间: 2023-08-28 09:11:40 浏览: 39
在 Android 中,你可以使用动画来实现搜索框的切换效果。以下是一个示例代码,展示了如何使用属性动画来实现搜索框的淡入淡出效果:
首先,在你的布局文件中添加一个搜索框视图,例如 EditText:
```xml
<EditText
android:id="@+id/searchBox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Search"
android:textColorHint="@color/colorHint" />
```
接下来,在你的 Java 或 Kotlin 代码中,你可以使用属性动画来实现搜索框的切换效果。下面是一个使用淡入淡出动画的示例代码:
```java
import android.animation.ObjectAnimator;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText searchBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
searchBox = findViewById(R.id.searchBox);
}
public void toggleSearchBox(View view) {
if (searchBox.getVisibility() == View.VISIBLE) {
// 淡出动画
ObjectAnimator animator = ObjectAnimator.ofFloat(searchBox, "alpha", 1f, 0f);
animator.setDuration(300);
animator.start();
searchBox.setVisibility(View.GONE);
} else {
// 淡入动画
ObjectAnimator animator = ObjectAnimator.ofFloat(searchBox, "alpha", 0f, 1f);
animator.setDuration(300);
animator.start();
searchBox.setVisibility(View.VISIBLE);
}
}
}
```
在上面的示例代码中,我们首先通过 findViewById() 方法获取搜索框的引用,并在 toggleSearchBox() 方法中切换搜索框的可见性。当搜索框从可见状态切换到不可见状态时,我们使用 alpha 属性动画将其淡出;当搜索框从不可见状态切换到可见状态时,我们使用 alpha 属性动画将其淡入。
你可以在你的项目中根据实际需求来调整动画效果和持续时间。希望这个示例能帮助到你!