我想创建一个像这样的用户配置文件,其中我有一个人的背景,其中混合了各种颜色。我已经制作了许多用户个人资料,但我想学习这种类型。我无法从互联网上找到任何暗示。
我尝试过自己的一些东西来淡化图像,但它并没有让我得到什么
public class MyUser extends Fragment {
ImageView aaa;
Handler handler = new Handler();
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_my_user,container,false);
aaa = (ImageView) v.findViewById(R.id.aaa);
(new Thread(){
@Override
public void run(){
for(int i=0; i<255; i++){
handler.post(new Runnable(){
public void run(){
aaa.setBackgroundColor(Color.argb(255, i,i,i));
}
});
// next will pause the thread for some time
try{ sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
return v;
}
}
我想要任何提示或参考吗?
提前谢谢你!
答案 0 :(得分:0)
<RelativeLayout
android:id="@+id/background_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background_image">
<RelativeLayout
android:id="@+id/foreground_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/gradient">
<!-- Here have the image and text view-->
</RelativeLayout>
</RelativeLayout>
你的drawable中的有这个gradient.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<gradient
android:type="linear"
android:startColor="#50505050"
android:endColor="#50505050"
android:angle="225"/>
</shape>
您可以通过修改渐变中的值来获得所需的渐变,这更像是获得渐变叠加效果的解决方法..以获得您需要相应实现的精确布局