我有一个关于课程/任务/活动的新手问题.我来自C所以我不知道这是否是一个很好的方法来做我需要的.
我创建了一个类:
public class UDPServer {
private MyDatagramReceiver myDatagramReceiver = null;
private static int MAX_UDP_DATAGRAM_LEN = 1024;
private static int UDP_SERVER_PORT = 5000;
public void start() {
myDatagramReceiver = new MyDatagramReceiver();
myDatagramReceiver.start();
}
public void kill() {
myDatagramReceiver.kill();
}
private class MyDatagramReceiver extends Thread {
private boolean bKeepRunning = true;
private String lastMessage = "";
public void run() {
String message;
byte[] lmessage = new byte[MAX_UDP_DATAGRAM_LEN];
DatagramPacket packet = new DatagramPacket(lmessage, lmessage.length);
DatagramSocket socket = null;
try
{
socket = …Run Code Online (Sandbox Code Playgroud) 我需要从我提供的十六进制值创建一个String.
例如,而不是像这样分配:
String message = "123";
Run Code Online (Sandbox Code Playgroud)
我想像这样分配:
String message = 0x31, 0x32, 0x33;
Run Code Online (Sandbox Code Playgroud)
那可能吗?
我读过,当我知道 Y 和 X 时,最好通过计算atan2(y,x)来获取角度,而不是使用带有 asin 和 acos 的单个值。我试图深入研究math.hlib 但没有找到任何公式。
有人可以解释为什么atan2更好吗?
我有一个 ImageButton,我想在按下时移动它,当动画完成时,我希望这个按钮停在新位置。
这是按钮代码:
<ImageButton
android:id="@+id/move_button"
android:layout_width="120dp"
android:layout_height="35dp"
android:layout_centerInParent="true"
android:layout_alignParentTop="true"
android:layout_marginTop="0dp"
android:scaleType="fitCenter"
android:background="@drawable/background_button"
android:src="@drawable/move_button"
android:onClick="MoveButton" />
Run Code Online (Sandbox Code Playgroud)
我在这个网站上找到了一个代码:
public void MoveButton(final View view) {
TranslateAnimation anim = new TranslateAnimation(0, 0, 100, 0);
anim.setDuration(300);
anim.setAnimationListener(new TranslateAnimation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) { }
@Override
public void onAnimationRepeat(Animation animation) { }
@Override
public void onAnimationEnd(Animation animation)
{
FrameLayout.LayoutParams params = (FrameLayout.LayoutParams)view.getLayoutParams();
params.topMargin += -100;
view.setLayoutParams(params);
}
});
view.startAnimation(anim);
}
Run Code Online (Sandbox Code Playgroud)
当按钮被按下时它开始动画,但是当动画完成时按钮返回到初始位置并且应用程序崩溃。
可能是什么问题?
当我使用以下方法执行截断时:
label.setText(String.format("%.2f", 1.2975118));
// 1,30
Run Code Online (Sandbox Code Playgroud)
我得到逗号(,)而不是点(。),这导致我的程序崩溃,因为我需要对浮点数执行操作。
如何截断浮点数并.setText用点而不是逗号?