我找到的唯一记录方式是:
MyFragment fragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.id.fragment);
Run Code Online (Sandbox Code Playgroud)
但是由于Fragment是在ViewPager中实例化的,所以我没有id.
List<Fragment> fragments = new Vector<Fragment>();
fragments.add(Fragment.instantiate(this, Fragment1.class.getName()));
fragments.add(Fragment.instantiate(this, Fragment2.class.getName()));
fragments.add(Fragment.instantiate(this, Fragment3.class.getName()));
Run Code Online (Sandbox Code Playgroud)
谢谢
我正在寻找一种方法来检测和访问各种Android设备(三星,摩托罗拉,LG,索尼,HTC)上的可移动SD卡.
我还需要与2.2兼容,因此Environment.isExternalStorageRemovable()对我来说无法使用.
摩托罗拉有自己的库,对于三星,我可以检测到它的存在 /external_sd/
我对其余的人一无所知.例如,我/_ExternalSD/在某些LG上看到过,但即使删除了SD,目录仍然存在.
奖金问题:是否会ACTION_MEDIA_MOUNTED为其中任何人播放意图
任何暗示都会非常有帮助.
我需要传递一个Class作为参数,但我只有通用类型T.我如何推断泛型类并将其传递给fromJson()?
public class Deserializer<T> implements JsonDeserializer<JsonList<T>> {
public T someMethod(){
...
T tag = gson.fromJson(obj, ???); // takes a class e.g. something.class
...
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我的代码在下面,并且当onCreate()
我从没有错误或stracktrace 调用时工作得非常好.它只是没有显示.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Are you sure you want to exit?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
finish();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
Run Code Online (Sandbox Code Playgroud) 单元测试对我来说是新的,我有这个错误,我不明白.我有2个TestCases子类,它们在独立运行时工作正常,但在我的测试套件中没有.
在测试套件(下面的AllTest类)中,前3个工作正常,但AvailableResouresTest和ModelTest生成错误.
我怀疑这与我必须在AllTest中导入这两个类(并且只有它们)这一事实有关,而它们都位于同一个包中.
我使用Eclipse向导创建了这两个测试用例.但是,我在代码中找不到明显的差异,因此可能会有些新鲜的眼睛可以提供帮助.非常感谢你
测试套件代码:
package com.tms.client.tests;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
import com.tms.client.model.AvailableResources; // I have to import those 2 classes only
import com.tms.client.model.Model; // but all my tests are in the same folder
@RunWith(Suite.class)
@SuiteClasses(value = { TaskTest.class,
ResourceTest.class,
DateForTMSTest.class,
AvailableResources.class,
Model.class})
public class AllTests{
public static final String SCHEME_FILENAME= "config/project_schema.inc2.xsd";
public static final String RESOURCE_FILENAME = "config/resourceList.inc2.txt";
public static final String PROJECT_FILENAME = "input/project.inc2.e.xml";
public static final String PROJECT_FILENAME_SAVE_LOCATION = "input/project.save.tmp.xml";
}
Run Code Online (Sandbox Code Playgroud)
非工作测试:
package com.tms.client.tests;
import …Run Code Online (Sandbox Code Playgroud) 我的代码中有这一行:
myGridView.setChoiceMode(GridView.CHOICE_MODE_MULTIPLE);
Run Code Online (Sandbox Code Playgroud)
它在ICS中工作得非常好,但在2.2和2.3.x时崩溃,并出现以下错误:
java.lang.NoSuchMethodError: android.widget.GridView.setChoiceMode
Run Code Online (Sandbox Code Playgroud)
但是看一下这些文档告诉我,API 1支持该方法,尽管它继承自AbsListView.我还发现这个问题没有明显的解决方案报告问题
有没有人现在解决这个问题,或者想知道如何为所有版本将选择模式设置为多个?
谢谢
在HTML代码中有一个div,如:
<div id="xxx.yyy">...</div>
Run Code Online (Sandbox Code Playgroud)
我想在css文件中指定样式.我怎样才能获得对这个div的引用?以下似乎不起作用:
#xxx.yyy {
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我正在编写一个单元测试,需要模拟一个Observable(来自改造)
测试组件中的代码如下:
getApiRequestObservable()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(...)
Run Code Online (Sandbox Code Playgroud)
在单元测试中(针对JVM因此AndroidSchedulers不可用)我需要使它全部同步,所以我的测试将如下所示:
@Test
public void testSomething() {
doReturn(mockedResponse).when(presenter).getApiRequestObservable();
presenter.callApi();
verify(object,times(1)).someMethod();
}
Run Code Online (Sandbox Code Playgroud)
为此,我应该在setUp()方法中注册钩子:
@Before
public void setUp() throws Exception {
// AndroidSchedulers.mainThread() is not available here so we fake it with this hook
RxAndroidPlugins.getInstance().registerSchedulersHook(new RxAndroidSchedulersHook() {
@Override
public Scheduler getMainThreadScheduler() {
return Schedulers.immediate();
}
});
// We want synchronous operations
RxJavaPlugins.getInstance().registerSchedulersHook(new RxJavaSchedulersHook(){
@Override
public Scheduler getIOScheduler() {
return Schedulers.immediate();
}
});
}
Run Code Online (Sandbox Code Playgroud)
但这引发了上述异常,因为我显然不允许注册两个钩子.那有什么办法吗?
我试图了解如何使用具有自定义身份验证的 Cloud Endpoints。从文档中我了解到它从以下开始securityDefinitions:
securityDefinitions:
your_custom_auth_id:
authorizationUrl: ""
flow: "implicit"
type: "oauth2"
# The value below should be unique
x-google-issuer: "issuer of the token"
x-google-jwks_uri: "url to the public key"
# Optional. Replace YOUR-CLIENT-ID with your client ID
x-google-audiences: "YOUR-CLIENT-ID"
Run Code Online (Sandbox Code Playgroud)
这就是我对流程的理解:
authorizationUrl我的问题:
应该如何authorizationUrl实施。请求看起来如何,成功或失败时应返回什么响应
这个值呢?x-google-issuer:“令牌的发行者” x-google-jwks_uri:“公钥的网址” x-google-audiences:“您的客户端ID”
我正在尝试使用 Google Cloud Storage JSON API 通过 http 调用从存储桶中检索文件。
我在与存储桶位于同一项目中的 GCE 中的 Container 中卷曲,并且服务帐户具有对存储桶的读取访问权限
这是请求的模式:
https://storage.googleapis.com/{bucket}/{object}
Run Code Online (Sandbox Code Playgroud)
根据 API 控制台,我不需要任何特别的东西,因为服务帐户提供了应用程序默认凭据。但是,我一直有这个:
Anonymous caller does not have storage.objects.get
Run Code Online (Sandbox Code Playgroud)
我还尝试为项目创建一个 API 密钥并将其附加到 url ( https://storage.googleapis.com/{bucket}/{object}?key={key}) 但我仍然遇到相同的 401 错误。
如何授权查询此 API 的请求?
android ×5
java ×2
css ×1
generics ×1
gridview ×1
junit ×1
rx-android ×1
rx-java ×1
type-erasure ×1