我想做一个虚线.我现在正在使用这个实线:
LinearLayout divider = new LinearLayout( this );
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.FILL_PARENT, 2 );
divider.setLayoutParams( params );
divider.setBackgroundColor( getResources().getColor( R.color.grey ) );
Run Code Online (Sandbox Code Playgroud)
我需要这样的东西,但点缀而不是坚实.我想避免在透明布局和实体布局之间交替进行数百种布局.
当我切换到横向模式(NUMPAD 7或CTRL+ F11)时,模拟器将屏幕旋转到横向,但Android操作系统和所有应用程序都不会旋转.所以一切都在侧身.是否需要设置AVD配置中的某些内容才能使设备正常旋转?

当我启动Android Studio并选择"New Project ..."并创建一个新项目时,我收到此弹出错误:
无法导入新的Gradle项目:找不到Build Tools修订版17.0.0
有关更多详细信息,请参阅IDE日志(帮助|显示日志)
我很乐意咨询IDE日志,但我甚至没有设法进入应用程序来做很多事情.我已多次浏览首选项以查看是否可以为Build Tools设置路径,但我找不到任何东西.我如何解决这个问题,或者如何在不打开项目的情况下进入应用程序,这样我至少可以看到日志?
我有一个TextViewX线长.如何获取第3行的文本?
示例:我有这个 TextView
这是第1行
这是第2行
这是第3行
我希望能够自己获得String这些行中的任何一行,例如让第String3行返回"这就是第3行".搜索换行符不是我需要的解决方案,因为它没有考虑文本换行.
我正在实现一个自定义TextView,我想在触摸视图时执行一些操作.我认为该onTouchEvent方法可以在不必使用的情况下为视图提供全方位的触摸setOnTouchListener(我正在尝试在视图中而不是在活动中完成所有工作,因此它是可移植的),但是唯一注册的触摸事件是ACTION_DOWN.如果我OnTouchListener使用此设置活动,我会获得全部触摸事件,但onTouchEvent不会.
任何人都知道为什么会这样,或者任何人都可以提供一个不涉及使用的解决方案setOnTouchListener(这会阻止实现活动设置自己的监听器)?
我正在实现一款应用内相机,每次拍照时我的图像都是320x240,不过手机的相机能够分辨率更高(Galaxy Nexus).我找不到用于设置分辨率的参数,那么如何提高我拍摄的图像的分辨率?这是相关的代码:
@Override
public void surfaceCreated( SurfaceHolder holder ) {
setSurfaceHolder( holder );
}
@Override
public void surfaceDestroyed( SurfaceHolder holder ) {
setSurfaceHolder( null );
}
private void attachCameraToSurface( Camera camera, SurfaceHolder holder ) {
try {
camera.setPreviewDisplay( holder );
setInPreview( true );
}
catch (IOException e) {
Log.e( "CameraFragment", "Exception in attachCameraToSurface()", e );
}
}
@Override
public void surfaceChanged( SurfaceHolder holder, int format, int width, int height ) {
Camera camera = getCamera();
if ( camera == null …Run Code Online (Sandbox Code Playgroud) 如何获得线性布局的宽度和高度,该布局在xml中定义为fill_parent的高度和宽度?我试过onmeasure方法,但我不知道为什么它没有给出确切的价值.在oncreate方法完成之前,我需要在Activity中使用这些值.
在ADT 17之后,非Android库需要包含在项目的"libs"文件夹中,或者通过构建路径中的"Order and Export"选项卡导出.在外部导入库之间有什么区别(如果有的话):


而在内部:


以"Android依赖关系"组中包含的方式导入库是否有优势?
我有一个TextView我希望允许用户从中选择一系列文本.的TextView占用设备(减去一些填充并且在顶部标题)的整个宽度和高度.在EditText如果长按一下你选择的覆盖,使您可以设置您选择的左右边界.我想要这个功能TextView.我已经在API级别9(2.3)(http://developer.android.com/sdk/android-2.3.html)中看到了新的文本选择控件,但是我很难实现它.我现在正在这样做:
eic = new InputConnection( bookTextView );
eic.beginBatchEdit();
Run Code Online (Sandbox Code Playgroud)
但它没有做任何明显的事情.有谁知道如何InputConnection正确使用?谢谢.
编辑:我不一定需要使用我上面尝试的内容.我最终想要使用一个TextView或一个EditText外观和感觉像一个,TextView并能够使用拖动光标选择文本.然后我想用各种上下文菜单选项(或弹出所选文本上方的菜单)操作所选文本.
我想录制来自麦克风的输入,附加混响效果,并将结果保存到文件中.我的用例是一款应用程序,可让您在录制后唱歌并选择不同的预设混响选项,然后保存您的演奏并将其存储在后端服务器上.我发送给服务器的文件需要应用混响效果.
到目前为止,我已经能够记录使用输入AudioRecord,我可以添加一个混响效果AudioTrack听到混响效果,但我卡在搞清楚如何保存音频与嵌入式混响效果.这是我到目前为止所拥有的:
private void startRecording() {
final int bufferSize = AudioRecord.getMinBufferSize(SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT);
mRecorder = new AudioRecord(MediaRecorder.AudioSource.VOICE_COMMUNICATION, SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT, bufferSize);
if(NoiseSuppressor.isAvailable()) {
NoiseSuppressor ns = NoiseSuppressor.create(mRecorder.getAudioSessionId());
ns.setEnabled(true);
}
if(AcousticEchoCanceler.isAvailable()) {
AcousticEchoCanceler aec = AcousticEchoCanceler.create(mRecorder.getAudioSessionId());
aec.setEnabled(true);
}
mPlayer = new AudioTrack(AudioManager.STREAM_MUSIC, SAMPLE_RATE, AudioFormat.CHANNEL_OUT_MONO, AUDIO_FORMAT, bufferSize, AudioTrack.MODE_STREAM);
PresetReverb reverb = new PresetReverb(1, mPlayer.getAudioSessionId());
reverb.setPreset(PresetReverb.PRESET_LARGEHALL);
reverb.setEnabled(true);
mPlayer.setAuxEffectSendLevel(1.f);
mRecorder.startRecording();
mPlayer.play();
new RecordingThread(mRecorder, mPlayer, bufferSize) {
@Override
public void onReleased() {
mRecorder = null;
mPlayer = null;
} …Run Code Online (Sandbox Code Playgroud)