我使用這個代碼:爲什麼單擊視圖時不會出現動畫?
package com.example.tileanimator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GridView gridview = (GridView) findViewById(R.id.gridview);
final ImageAdapter ia = new ImageAdapter(this);
gridview.setAdapter(ia);
gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
for(int i = 0; i < ia.getCount(); i++) {
if(position != i) {
View toFade = ia.getView(i, null, parent);
fadeout(toFade);
Toast.makeText(MainActivity.this, "Fading out: " + i,
Toast.LENGTH_SHORT).show();
}
}
}
});
}
private void fadeout(View v) {;
v.setAlpha(1f);
v.setVisibility(View.VISIBLE);
v.animate()
.alpha(0f)
.setDuration(1000);
}
}
基本上,例如這裏找到:https://developer.android.com/guide/topics/ui/layout/gridview.html
當我點擊任何圖片,我看到了吐司,但不顯示動畫。任何想法爲什麼?
(我也困惑是否爲空傳遞作爲第二個參數getView()是一個好主意,如果是這樣,是什麼,而不是通過)
如果它的事項,我ImageAdapter是在這裏:
package com.example.tileanimator;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
/**
* Created by xrdawson on 11/17/16.
*/
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public ImageAdapter(Context c) {
mContext = c;
}
public int getCount() {
return mThumbIds.length;
}
public Object getItem(int position) {
return null;
}
public long getItemId(int position) {
return 0;
}
// create a new ImageView for each item referenced by the Adapter
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
// if it's not recycled, initialize some attributes
imageView = new ImageView(mContext);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(mThumbIds[position]);
return imageView;
}
// references to our images
private Integer[] mThumbIds = {
R.drawable.sample_2, R.drawable.sample_3,
R.drawable.sample_4, R.drawable.sample_5,
R.drawable.sample_6, R.drawable.sample_7,
R.drawable.sample_0, R.drawable.sample_1,
R.drawable.sample_2, R.drawable.sample_3,
R.drawable.sample_4, R.drawable.sample_5,
R.drawable.sample_6, R.drawable.sample_7,
R.drawable.sample_0, R.drawable.sample_1,
R.drawable.sample_2, R.drawable.sample_3,
R.drawable.sample_4, R.drawable.sample_5,
R.drawable.sample_6, R.drawable.sample_7
};
}
該功能從哪裏來?你的意思是說,重命名它? – xrd