恢复 .setOnClickListener 的默认动画视图
restore default animation view of .setOnClickListener
The Image of the issue
点击前,“setOnClickListener”的视图如右图
代码setOnClickListener的动作:
card_sales.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
view.startAnimation(fade);
if(m_inventory.equals("1")){
card_sales.setBackgroundColor(getResources().getColor(R.color.white_greyish));
Intent profil = new Intent(getActivity(),InventoryActivity2.class);
startActivity(profil);
}else if(m_inventory.equals("0") || m_inventory.equals("") || m_inventory == null){
Toast.makeText(getActivity(),"Access Denied",Toast.LENGTH_LONG).show();
}
}
});
然后我按下 activity
中的后退按钮
@Override
public void onBackPressed() {
finish();
formstock.setVisibility(View.VISIBLE);
}
然后“setOnClickListener”视图如左图所示。
请给我这个问题的解决方案:(
点击按钮 setBackgroundColor
时不应该设置固定颜色。而是使用背景选择器
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<color android:color="@color/white_greyish" />
</item>
<item>
<color android:color="@color/white" />
</item>
</selector>
将此文件保存在 drawable
文件夹中,并在 XML 中为 card_sales
设置此文件
android:background="@drawable/filename"
恕我直言,您可以使用默认选择器实现更好的效果(波纹)
android:background="?android:attr/selectableItemBackground"
顺便说一句。当你调用 finish()
时,这个 Activity
就会被销毁,所以没有必要调用 formstock.setVisibility(View.VISIBLE);
。如果你真的需要在那一刻展示一些东西,并且上面的行会按你预期的那样工作——你的架构非常错误,而且舒尔有一些内存泄漏
The Image of the issue
点击前,“setOnClickListener”的视图如右图
代码setOnClickListener的动作:
card_sales.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
view.startAnimation(fade);
if(m_inventory.equals("1")){
card_sales.setBackgroundColor(getResources().getColor(R.color.white_greyish));
Intent profil = new Intent(getActivity(),InventoryActivity2.class);
startActivity(profil);
}else if(m_inventory.equals("0") || m_inventory.equals("") || m_inventory == null){
Toast.makeText(getActivity(),"Access Denied",Toast.LENGTH_LONG).show();
}
}
});
然后我按下 activity
中的后退按钮@Override
public void onBackPressed() {
finish();
formstock.setVisibility(View.VISIBLE);
}
然后“setOnClickListener”视图如左图所示。
请给我这个问题的解决方案:(
点击按钮 setBackgroundColor
时不应该设置固定颜色。而是使用背景选择器
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<color android:color="@color/white_greyish" />
</item>
<item>
<color android:color="@color/white" />
</item>
</selector>
将此文件保存在 drawable
文件夹中,并在 XML 中为 card_sales
android:background="@drawable/filename"
恕我直言,您可以使用默认选择器实现更好的效果(波纹)
android:background="?android:attr/selectableItemBackground"
顺便说一句。当你调用 finish()
时,这个 Activity
就会被销毁,所以没有必要调用 formstock.setVisibility(View.VISIBLE);
。如果你真的需要在那一刻展示一些东西,并且上面的行会按你预期的那样工作——你的架构非常错误,而且舒尔有一些内存泄漏