什么是无线测量两个物体(计算机,智能手机或专用设备)之间距离的最佳方法,这两个物体相距几米,精度达到~10厘米?这可能通过在WLan,蓝牙或GPS上进行捎带吗?
对于Java 1.6版,输出是false true,但是对于版本1.8,输出更改为true true.
有人可以解释为什么会这样吗?
Intern方法用于引用堆中创建的对象的相应字符串常量池,如果该对象不存在,则它将创建String常量池.如果我的理解是错误的,请纠正我.
public class Intern_String2 {
public static void main(String[] args) {
String s1 = new String("durga"); //object created in heap
String s2 = s1.concat("software");
//object durga software created in heap at runtime
String s3 = s2.intern();
// create durga software object in string constant pool as none exist.
System.out.println(s2==s3);//should be false but print true in 1.8 version.
String s4 = "durgasoftware";
System.out.println(s3==s4);//prints true in both version..
}
}
Run Code Online (Sandbox Code Playgroud) putSerializable坏了吗?
当我使用putSerializable传递null时,FillSummary.class将按原样启动.但是,如果我传递了一个TestSerial对象而不是Android force关闭.
要通过Bundle传输自定义对象,我该怎么办?
public class TestSerial implements Serializable{
private static final long serialVersionUID = 2310640779687082782L;
public int i;
public TestSerial(){
i=1;
}
}
private void renderSummary(){
Intent intent = new Intent(FillForm.this, FillSummary.class);
Bundle extras = new Bundle();
extras.putSerializable("test serial", new TestSerial());
intent.putExtras(extras);
startActivityForResult(intent, Forms.DISPLAY_SUMMARY);
}
Run Code Online (Sandbox Code Playgroud)
错误:
06-28 13:56:02.436: ERROR/AndroidRuntime(1136): Uncaught handler: thread main exiting due to uncaught exception
06-28 13:56:02.784: ERROR/AndroidRuntime(1136): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { action=Return user choice (has extras) }} to activity {com.Questionaire/com.Questionaire.FillForm}: …Run Code Online (Sandbox Code Playgroud) 我想在Volume Up和Down上接受过量输入.目前我的代码是:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.v(TAG, event.toString());
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){
mLamp.moveBackward();
return false;
}
else if(keyCode == KeyEvent.KEYCODE_VOLUME_UP){
mLamp.moveForward();
return false;
}
return true;
}
public boolean onKeyUp(int keyCode, KeyEvent event) {
Log.v(TAG, event.toString());
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){
return false;
}
else if(keyCode == KeyEvent.KEYCODE_VOLUME_UP){
return false;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
这会触发mLamp.moveBackward()和mLamp.moveForward()功能,但它仍然会改变铃声的音量.我需要做些什么才能使铃声响度不变?
是否有可能更简洁地重写以下内容,我不必重复写this.x = x;两次?
public class cls{
public int x = 0;
public int y = 0;
public int z = 0;
public cls(int x, int y){
this.x = x;
this.y = y;
}
public cls(int x, int y, int z){
this.x = x;
this.y = y;
this.z = z;
}
}
Run Code Online (Sandbox Code Playgroud) 在我的Android应用程序中,我想知道用户点击的点与特定的VectorDrawable组之间的距离.
我希望距离像blueVectorDrawable中的组一样:
<vector android:height="24dp" android:viewportHeight="1052.3622"
android:viewportWidth="744.0945" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#ff0000"
android:name="blue"
android:pathData="M182.9,349.5m-74.7,0a74.7,74.7 0,1 1,149.3 0a74.7,74.7 0,1 1,-149.3 0"
android:strokeAlpha="1" android:strokeColor="#000000" android:strokeWidth="4.23501825"/>
<path android:fillColor="#00ff00"
android:name="red"
android:pathData="M474.3,392.4a84.3,102.9 0,1 0,168.6 0a84.3,102.9 0,1 0,-168.6 0z"
android:strokeAlpha="1" android:strokeColor="#000000" android:strokeWidth="5"/>>
</vector>
Run Code Online (Sandbox Code Playgroud)
在Android中有一种直接的方法来计算这个距离吗?
android android-layout android-drawable android-graphics android-vectordrawable
我不喜欢第一次在 Play 商店中发布应用程序时使用的 ApplicationId,并且想要更改它。那可能吗?
我发现如何更改现有应用程序的 Android 应用程序名称和 ID?但它只处理 Eclipse 中的应用程序,而不处理已经发布的应用程序。
因为我希望能够通过播放视频的MediaPlayer,我想在播放视频的片段中使用SurfaceView而不是VideoView.
我查看了之前关于如何将MediaPlayer附加到SurfaceView的问题.这个问题的答案告诉我要创建两个函数:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_player);
getWindow().setFormat(PixelFormat.UNKNOWN);
mPreview = (SurfaceView)findViewById(R.id.surfaceView);
holder = mPreview.getHolder();
holder.setFixedSize(800, 480);
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mp = new MediaPlayer();
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
// TODO Auto-generated method stub
mp.setDisplay(holder);
play();
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我不能通过Fragment覆盖surfaceCreated,因为Fragment没有这个方法.我还可以将MediaPlayer附加到片段中的SurfaceView吗?
android android-video-player android-fragments android-mediaplayer
我正在使用 MVVM 模式开发 Xamarin 应用程序。我想在用户按下按钮时向用户显示警报。
我声明我的 ViewModel
class MainPageViewModel : BindableBase {
Run Code Online (Sandbox Code Playgroud)
不幸的是,我无法Page直接从 ViewModel 中访问对象。我如何最好地显示我的警报?
Column我有一个需要可变数量计时器的Flutter 。当需要一个计时器时,结果看起来像我想要的:
但是,如果我添加两个计时器,则会出现溢出:
我希望在第二种情况下计时器缩小以占用可用空间。如果我有四个计时器,理想情况下它也会显示两行和两列。
FittedBox我尝试用我设置的适合的计时器来包装我的计时器:BoxFit.fitHeight但这没有达到预期的结果。我还需要做什么?
按照评论中的要求使用 Wrap 代码:
Wrap(
children: state.currentTimers
.map((selectedTimer) => TimerSessionWidget(selectedTimer))
.toList(),
);
class TimerSessionWidget extends StatefulWidget {
@override
_SelectedTimerState createState() => _SelectedTimerState(_selectedTimer);
final TimerSession _selectedTimer;
TimerSessionWidget(this._selectedTimer);
}
class _SelectedTimerState extends State {
final TimerSession _selectedTimer;
_SelectedTimerState(this._selectedTimer);
@override
Widget build(BuildContext context) {
return FittedBox(
fit: BoxFit.fitHeight,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: GestureDetector(
behavior: HitTestBehavior.deferToChild,
onTap: () {
if (_selectedTimer.loadedTimerBloc.state is VirginTimerState) {
_selectedTimer.loadedTimerBloc.add(StartTimerAction());
} else if (_selectedTimer.loadedTimerBloc.state
is FinishedTimerState) {
_selectedTimer.stopAlarmSound();
} …Run Code Online (Sandbox Code Playgroud)