我想在package Samples;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Percussion {
private byte[] audioBytes = null;
public Percussion(String type) throws IOException {
ByteArrayOutputStream out = new ByteArrayOutputStream();
BufferedInputStream in;
try {
in = new BufferedInputStream(new FileInputStream("samples/"+type+".wav"));
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("ERROR :: NO INSTRUMENT FOUND");
e.printStackTrace();
return;
}
int read;
byte[] buff = new byte[1024];
while ((read = in.read(buff)) > 0) {
out.write(buff, 0, read);
}
out.flush();
audioBytes = out.toByteArray();
System.out.println(audioBytes.length);
/*for(int i = 0 ; i< audioBytes.length ; i++){
System.out.println(audioBytes[i]);
}*/
}
public byte[] getAudioBytes() {
return audioBytes;
}
public void setAudioBytes(byte[] audioBytes) {
this.audioBytes = audioBytes;
}
}
中更改正面按钮的颜色,以下是我在下面做的事情:
// Alertdialog
style.xml
我使用的风格是:
<style name="AlertDialogCustom" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="android:buttonBarPositiveButtonStyle">@style/positive</item>
</style>
<style name="positive">
<item name="android:textColor">@color/accent</item>
</style>
但我正在做的事情不起作用,我只是想改变正面的按钮颜色。我不想在java代码中更改按钮的颜色。
提前致谢: - )
修改-1 Alertdialog layout xml
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(), R.style.AlertDialogCustom);
答案 0 :(得分:5)
注意:建议不要使用该解决方案,因为这实际上是一个hacky解决方案。它不遵循Android设计,不应该使用。我通过java更改正面按钮颜色。感谢@Divers指出这一点。
styles.xml
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(), R.style.AlertDialogCustom);
用法的
buttonBarPositiveButtonStyle
也许这里有一点你应该注意,android: buttonBarPositiveButtonStyle
而不是.card:hover .icon{animation: sprite-flip 1s steps(59) 1 forwards ;}
。
答案 1 :(得分:2)
builder.setOnShowListener( new OnShowListener() {
@Override
public void onShow(DialogInterface arg0) {
builder.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(COLOR_YOU_WANT);
}
}
希望它有所帮助!干杯!
答案 2 :(得分:0)
没有办法通过样式来实现,因为从UI的角度来看通常是错误的。无论如何你想要这样做,只需通过java。