我想要实现的是让我点击一个按钮,然后根据子串播放声音.
这是我当前按下按钮的代码:
display.setText("start");
thefull = thef.getText().toString();
for(int a=0;a<thefull.length();a++)
{
letter=thefull.substring(a,a+1);
if(letter=="m")
{
oursong = MediaPlayer.create(MainActivity.this, R.raw.m);
oursong.start();
while(oursong.isPlaying())
{
display.setText("start");
}
oursong.release();
}
else if(letter=="a")
{
oursong = MediaPlayer.create(MainActivity.this, R.raw.a);
oursong.start();
while(oursong.isPlaying())
{
display.setText("start");
}
oursong.release();
}
display.setText("done");
Run Code Online (Sandbox Code Playgroud)
但出于某种原因,当我点击我的按钮时,没有播放声音.我也是android和java编程的新手,所以我这样做是对的吗?
因为我真正想要的是程序在点击按钮时继续检查声音是否正在播放(在这种情况下是"我们的")并且声音正在播放我希望程序等待它完成以启动另一个声音在它之后.但是现在我的代码没有播放任何声音
我有一个listBox1应该显示我桌面上的所有文件,我使用了以下方法来执行此操作
string filepath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
DirectoryInfo path = new DirectoryInfo(filepath);
foreach (var file in path.GetFiles())
{
listBox1.Items.Add("File : " + file.Name);
}
Run Code Online (Sandbox Code Playgroud)
它可以工作,但由于某种原因,它不显示一些快捷方式,它显示一些快捷方式,但大多数都没有显示.我不知道为什么会这样
出于某种原因,当我在我的代码中声明onResume()时,它会在开始时无缘无故地崩溃我的程序,它甚至都没有打开.
这是我的onResume()代码:
public void onResume()
{
if(play==true)
{
if(playing==false)
{
if(numbl>0)
{
letter=thefull.substring(cur, cur+1);
if(letter.equals("m"))
{
oursong = MediaPlayer.create(MainActivity.this, R.raw.m);
oursong.start();
playing=true;
}
else if(letter.equals("a"))
{
oursong = MediaPlayer.create(MainActivity.this, R.raw.a);
oursong.start();
playing=true;
}
else if(letter.equals("r"))
{
oursong = MediaPlayer.create(MainActivity.this, R.raw.r);
oursong.start();
playing=true;
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
一旦我删除onResume()程序运行就好了.难道我做错了什么?
以下是我的完整代码:http://pastebin.com/faVfFK6q