我有android surfaceview,并且我正在尝试添加按钮.在surfaceview画布中我画了一些东西.我有一个线程类来继续绘图.
package com.androidsurfaceview;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class androidsurfaceview extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button buttonShowHide = (Button)findViewById(R.id.showhide);
final Button buttonDummy = (Button)findViewById(R.id.dummy);
buttonShowHide.setOnClickListener(
new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(buttonDummy.getVisibility()==View.VISIBLE){
buttonDummy.setVisibility(View.GONE);
}
else{
buttonDummy.setVisibility(View.VISIBLE);
}
}
}
);
Run Code Online (Sandbox Code Playgroud)
线程类
package com.androidsurfaceview;
import android.graphics.Canvas;
import android.view.SurfaceHolder;
public class MySurfaceThread extends Thread { …Run Code Online (Sandbox Code Playgroud) 我为Android设计了一款游戏,一切正常,但现在我想让我的应用程序有谷歌玩游戏服务(排行榜和成就).我使用Google示例代码登录Google服务(脚本中没有错误),但每次我想在调试模式下连接我的应用程序时,都会收到以下错误:
6-29 11:48:29.391 23779-23779/com.JFKGames.theepicbutton E/AndroidRuntime? FATAL EXCEPTION: main
Process: com.JFKGames.theepicbutton, PID: 23779
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=9001, result=10004, data=null} to activity {com.JFKGames.theepicbutton/com.JFKGames.theepicbutton.MainActivity}: java.lang.IllegalStateException: GoogleApiClient must be connected.
at android.app.ActivityThread.deliverResults(ActivityThread.java:3446)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3489)
at android.app.ActivityThread.access$1300(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1258)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5102)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: GoogleApiClient must be connected.
at com.google.android.gms.internal.fq.a(Unknown Source)
at com.google.android.gms.games.Games.c(Unknown Source)
at com.google.android.gms.games.internal.api.LeaderboardsImpl.submitScore(Unknown Source)
at com.google.android.gms.games.internal.api.LeaderboardsImpl.submitScore(Unknown Source)
at com.JFKGames.theepicbutton.MainActivity.onActivityResult(MainActivity.java:79)
at android.app.Activity.dispatchActivityResult(Activity.java:5446)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3442)
at …Run Code Online (Sandbox Code Playgroud) <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.org.BatteryManager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<com.org.BatteryManager.BatteryView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:textColor="#ffffffff"
/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 在尝试将JSON字符串加载到JSONArray中的过程中,我遇到了一些问题.我希望这里的帖子可以帮助我解决问题.
该文件位于assets文件夹中,包含Kabelskap类的对象.JSON字符串的格式如下:
[{"driftsmerking":"1420 10 04","objektnummer":"56569.0","adresse":"KANEBOGÅSEN 4","fabrikat":"NEBB","typebetegnelse":"KO500","spenning":"0.23","posisjon":"OK","kompNr":"1420","kommune":"1901 HARSTAD","latitude":"68.7786964342854","longitude":"16.5598512563035"},{"driftsmerking":"4416 01 04","objektnummer":"246349.0","adresse":"NONSÅSEN","fabrikat":"ABB","typebetegnelse":"KO300","spenning":"0.23","posisjon":"OK","kompNr":"4416","kommune":"1911 KVÆFJORD","latitude":"68.7367985627796","longitude":"16.2694481350258"},{"driftsmerking":"4080 05 02","objektnummer":"275933.0","adresse":"KVÆFJORD PLANTESKOLE VEKSTHUS","fabrikat":"ABB","typebetegnelse":"KO700","spenning":"0.23","posisjon":"OK","kompNr":"4080","kommune":"1911 KVÆFJORD","latitude":"68.7712454761326","longitude":"16.1901046355049"},{"driftsmerking":"1383 01 02","objektnummer":"150951.0","adresse":"SKILLEVN. 13","fabrikat":"ABB","typebetegnelse":"","spenning":"0.4","posisjon":"OK","kompNr":"1383","kommune":"1901 HARSTAD","latitude":"68.7781436806564","longitude":"16.5643438120601"},{"driftsmerking":"4085 07 02","objektnummer":"275122.0","adresse":"MATHUSET","fabrikat":"NEBB","typebetegnelse":"70","spenning":"0.23","posisjon":"OK","kompNr":"4085","kommune":"1911 KVÆFJORD","latitude":"68.7721426826508","longitude":"16.1785193494225"}]
Run Code Online (Sandbox Code Playgroud)
该字符串被读入一个String变量,然后传递给此代码段:
try {
JSONObject jsonObj = new JSONObject(finalString);
for(int i = 0; i < json.length(); i++){
Kabelskap ks = (Kabelskap) json.get(i);
skap.put(ks.objektnummer, ks);
}
} catch (JSONException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
根据我的预期,这应该返回一个JSON数组,然后我可以迭代并转换为我的类的对象.
11-30 00:31:33.568: INFO/System.out(389): {"driftsmerking":"1420 10 04","objektnummer":"56569.0","adresse":"KANEBOG?SEN 4","fabrikat":"NEBB","typebetegnelse":"KO500","spenning":"0.23","posisjon":"OK","kompNr":"1420","kommune":"1901 HARSTAD","latitude":"68.7786964342854","longitude":"16.5598512563035"}{"driftsmerking":"4416 01 04","objektnummer":"246349.0","adresse":"NONS?SEN","fabrikat":"ABB","typebetegnelse":"KO300","spenning":"0.23","posisjon":"OK","kompNr":"4416","kommune":"1911 KV?FJORD","latitude":"68.7367985627796","longitude":"16.2694481350258"}{"driftsmerking":"4080 05 02","objektnummer":"275933.0","adresse":"KV?FJORD PLANTESKOLE VEKSTHUS","fabrikat":"ABB","typebetegnelse":"KO700","spenning":"0.23","posisjon":"OK","kompNr":"4080","kommune":"1911 KV?FJORD","latitude":"68.7712454761326","longitude":"16.1901046355049"}{"driftsmerking":"1383 01 02","objektnummer":"150951.0","adresse":"SKILLEVN. 13" of type org.json.JSONObject cannot be converted to …Run Code Online (Sandbox Code Playgroud) 这是我用来验证的代码,在服务器上存在或不存在URL,但始终不存在但链接仍然存在
在我的代码中我犯了错误,为什么我总是"不存在!"
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String customURL = "http://www.desicomments.com/dc3/08/273858/273858.jpg";
boolean bResponse = exists(customURL);
if (bResponse==true)
{
Toast.makeText(MainActivity.this, "File exists!", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(MainActivity.this, "File does not exist!", Toast.LENGTH_SHORT).show();
}
}
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
HttpURLConnection con = (HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
}
Run Code Online (Sandbox Code Playgroud) 我尝试使用PreferenceActivity进行配置活动...
我找到了一些可行的例子
“ WiFi高级配置编辑器”
和
“ Wifi配置编辑器专业版”
但是我编写的代码在网上等待了10-15秒editor.commit()...它必须非常简单,但我无法弄清楚。
这是简短的代码;
...
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(v.getContext());
prefs.registerOnSharedPreferenceChangeListener(ClassConfig.this);
SharedPreferences.Editor editor = prefs.edit();
editor.clear();
editor.putString("key1", value1);
editor.putString("key2", value2);
editor.putBoolean("key3", value3);
...
//i got nearly 35 keys here
...
editor.putString("key33", value33);
editor.putBoolean("key34", value34);
editor.putBoolean("key35", value35);
editor.commit();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗??
更新:还有一件事。我在日志文件中看到了这些警告
W / BackupManagerService(1914)dataChanged但没有参与者pkg ='com.android.providers.settings'uid = 10046
我的问题很简单,我正在尝试动态更改此按钮的宽度:
按钮>机器人:layout_height = "35dip" 机器人:背景= "@绘制/ buttonlesson" 机器人:文本= "3级[TAP HERE]" 机器人:的onClick = "MenuLI1L3" 机器人:layout_width = "300dp" 机器人:ID =" @ + ID/II3 "> /按钮"
这是我使用的代码:
<Button>
android:layout_height="35dip"
android:background="@drawable/buttonlesson"
android:text="Level 3 [TAP HERE]"
android:onClick="MenuLI1L3"
android:layout_width="300dp"
android:id="@+id/II3"
</Button>
Run Code Online (Sandbox Code Playgroud)
文字确实改变但不是宽度.声音就像有一个bug.右边有另一个按钮,当这个按钮缩小到10像素时,可以填补间隙,所以我也无法改变上面的Linearlayout.
任何解释和解决方案?它不应该工作吗?谢谢
我的目的是制作一个广播接收器,在接收呼叫时执行动作.是否有可能比自动呼叫接收SO?更优先.
我已经尝试过分配一个2147483647我认为最好的优先级,但仍然会跳到我接收器结束前尝试呼叫.
<!-- Receiver de llamadas -->
<receiver android:name=".PhoneCall">
<intent-filter android:priority="2147483647">
<action android:name="android.intent.action.PHONE_STATE"/>
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud) 我试图将我的Android API密钥(对于Google Maps Direction API)的使用限制为使用我的SHA-1指纹签名的Android应用.当我没有在Google Developers Console上的凭据下添加"添加包名称和指纹"时,密钥将完全正常工作.但是当我添加它们时出现这个错误:
W/System.err:com.google.maps.errors.RequestDeniedException:此IP,站点或移动应用程序无权使用此API密钥.从IP地址XX.XX.XXX.XXX收到的请求,空引用
解决此错误的大多数答案都是针对Places API,并通过切换到Server API密钥来解决它.我需要使用Android密钥并希望限制该密钥的用户.
我注意到的要点:1)Google确实认识到我使用的是有效的API密钥.2)Google确实识别出正确的SHA-1签名,如果我使用无效的API密钥,Google会显示签名错误.
任何帮助将非常感激!
android ×10
api ×1
button ×1
dynamic ×1
file-exists ×1
google-maps ×1
graphics ×1
java ×1
json ×1
parsing ×1
preferences ×1
surfaceview ×1
textview ×1
url ×1