在Android中,要动态更改阴影层,可以使用View
类的setElevation()
方法来设置阴影的偏移量、大小和颜色。以下是如何使用setElevation()
方法动态更改阴影的示例:
首先,在布局文件中创建一个View
并设置其ID:
<View
android:id="@+id/my_view"
android:layout_width="100dp"
android:layout_height="100dp"
android:background="@color/colorPrimary"/>
接下来,在Activity或Fragment中,使用findViewById()
方法获取View
的引用,并使用setElevation()
方法动态更改阴影:
import android.os.Bundle;
import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View myView = findViewById(R.id.my_view);
// 设置阴影偏移量(dp)
float elevation = 10;
myView.setElevation(elevation);
// 更改阴影颜色
int shadowColor = getResources().getColor(android.R.color.darker_gray);
myView.setElevation(elevation, shadowColor);
}
}
在这个示例中,我们首先设置了阴影偏移量,然后更改了阴影颜色。您可以根据需要调整这些值。