我在Screen类下使用了这个方法,其中的String file应该填写什么啊,我在Assets文件夹下放了一个test,mp3,是不是应该填test啊,可是显示出错啊。不知道具体这个的求教Android中,String file到底应该填写什么变量啊,求举例!抓狂了。
解决方案 »
- 求助访问网络数据问题
- launchMode设置为singletask的一点疑问,标题要长。。。
- 关于一个自定义适配器的问题?
- 为什么从inotify里读event总是失败?
- 有人在做短信这块吗?
- Activity中不能显示Dialog
- socket 开放一个端口 做分发器 链接服务器能接收的了么!
- 华为8812e 应用崩溃,页面随机跳转
- listview的getview中如何不添加该条list?
- eclipse重下后不能启动
- 有人用过AChartEngine 绘制方波吗
- 求指导,android 旋转屏幕时在onConfigurationChanged方法中加载setContentView出现OOM错误
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.view.View;public class TileView extends View { protected static int mTileSize; // 节大小 protected static int mXTileCount; // X坐标
protected static int mYTileCount; // Y坐标 private static int mXOffset; // X轴偏移量
private static int mYOffset; // Y轴偏移量 private Bitmap[] mTileArray; // 存放图片的数组 private int[][] mTileGrid; // 瓦片网格数组 private final Paint mPaint = new Paint(); // 画笔 public TileView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
//获得风格属性组
TypedArray a = context.obtainStyledAttributes(attrs,
R.styleable.TileView);
//获得R.styleable.TileView_tileSize,缺省值为12
mTileSize = a.getInt(R.styleable.TileView_tileSize, 12);
//返回先前使用过的风格属性集,使用TypedArray后一定要使用这个。
a.recycle();
} public TileView(Context context, AttributeSet attrs) {
super(context, attrs); TypedArray a = context.obtainStyledAttributes(attrs,
R.styleable.TileView); mTileSize = a.getInt(R.styleable.TileView_tileSize, 12); a.recycle();
} public void resetTiles(int tilecount) {
mTileArray = new Bitmap[tilecount];//创建图片数组
} @Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
mXTileCount = (int) Math.floor(w / mTileSize);//获得X轴能放多少个节
mYTileCount = (int) Math.floor(h / mTileSize);//获得Y轴能放多少个节 mXOffset = ((w - (mTileSize * mXTileCount)) / 2);//获得X偏移量
mYOffset = ((h - (mTileSize * mYTileCount)) / 2);//获得Y偏移量 mTileGrid = new int[mXTileCount][mYTileCount];//创建整个网格数组
clearTiles();//清屏
}
//加载图片
public void loadTile(int key, Drawable tile) {
//创建图片
Bitmap bitmap = Bitmap.createBitmap(mTileSize, mTileSize,
Bitmap.Config.ARGB_8888);
//创建画布
Canvas canvas = new Canvas(bitmap);
//画图
tile.setBounds(0, 0, mTileSize, mTileSize);
tile.draw(canvas); mTileArray[key] = bitmap;
}
//清屏方法
public void clearTiles() {
for (int x = 0; x < mXTileCount; x++) {
for (int y = 0; y < mYTileCount; y++) {
setTile(0, x, y);
}
}
}
//设置一个方格方法
public void setTile(int tileindex, int x, int y) {
mTileGrid[x][y] = tileindex;
}
//画图方法
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
for (int x = 0; x < mXTileCount; x += 1) {
for (int y = 0; y < mYTileCount; y += 1) {
if (mTileGrid[x][y] > 0) {
canvas.drawBitmap(mTileArray[mTileGrid[x][y]], mXOffset + x
* mTileSize, mYOffset + y * mTileSize, mPaint);
}
}
} }}
你的文件名为 test.mp3 ,调用代码就应该是
playtAssetsMusic("test.mp3",true)循环播放
playtAssetsMusic("test.mp3",false)只播放一次我怀疑你第一个参数没有带引号