我正在尝试在Android Studio项目中使用Dagger 2.我用过CoffeeMaker的例子.我设法使应用程序构建和工作: - 我没有成功看到生成的代码. - 如果我调试,我也看不到它. - 另外DaggerCoffeeApp_Coffee标记为芦苇(无法解析符号)
我的gradle文件是:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
Run Code Online (Sandbox Code Playgroud)
和
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.mateuyabar.android.dagger2test"
minSdkVersion 22
targetSdkVersion 22
versionCode …
Run Code Online (Sandbox Code Playgroud) android gradle android-studio android-gradle-plugin dagger-2
我有一个自定义推文按钮:
<a href="http://twitter.com/share?url=http://example.com;text=myText;size=l&count=none" target="_blank">
<div>
<img src="/assets/twitter-logo.jpg">
<span>Twitter</span>
</div>
</a>
Run Code Online (Sandbox Code Playgroud)
现在我想在推文发布后获得一些结果.为此,我查看了Twitter Events API:
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<script type="text/javascript">
twttr.events.bind('tweet', function (event) {
alert("Tweet Successful");
});
</script>
Run Code Online (Sandbox Code Playgroud)
但是,此API仅适用于非自定义按钮(twitter-share-button
类).
任何人都设法创建一个监听事件的自定义按钮?
我正在开发一个Android应用程序.我希望能够通过代码添加一个视图,该视图是在应用程序的所有活动之上绘制的.
我试图将它添加到窗口管理器:
LayoutInflater inflater = activity.getLayoutInflater();
layout = inflater.inflate(R.layout.toast_layout, null);
WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.gravity = Gravity.BOTTOM;
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
params.width = WindowManager.LayoutParams.WRAP_CONTENT;
params.type = WindowManager.LayoutParams.TYPE_TOAST;
final WindowManager mWindowManager = (WindowManager);
activity.getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
mWindowManager.addView(layout, params);
Run Code Online (Sandbox Code Playgroud)
但是,像这样添加它我面临两个问题:
1.当我退出应用程序时,仍会显示布局.
2.布局不响应Click事件.
有没有其他解决方案来实现这一目标
谢谢.
我试图使用依赖::破坏但没有成功.
让我们举一个简单的例子.我用以下内容创建一个简单的应用程序:
rails g model parent
rails g model child parent:references
Run Code Online (Sandbox Code Playgroud)
将以下行添加到parent.rb
has_many :children, dependent: :destroy
Run Code Online (Sandbox Code Playgroud)
我在rails console(rails c)中进行了以下测试
p = Parent.create!
c = Child.create!
c.parent = p
c.save
#check association
Child.first == Child.first.parent.children.first
p.delete
#This should return 0
Child.count == 0
Run Code Online (Sandbox Code Playgroud)
而Child.count返回1.
我错过了什么?
谢谢
使用新的Html 5,有三种主要方式可以在浏览器中存储数据:
我想知道,对于每种类型,数据存储的时间长短?如果用户输入后一天,数据仍然存在?一个月后?还有一年?
谢谢
我有一个jQuery选择器的问题.
假设我有以下html (...)
代表未定义数量的html标签.
(...)
<div class="container">
(...)
<div class="subContainer">
(...)
<div class="container">
(...)
<div class="subContainer"/>
(...)
</div>
(...)
</div>
(...)
</div>
(...)
Run Code Online (Sandbox Code Playgroud)
假设我有一个调用的javascript变量container
指向第一个div(带有类容器).我想要一个jquery来选择第一个子容器而不是嵌套的子容器.如果我使用$(".subContainer", container);
我会得到他们两个.
我试过用了
$(".subContainer:not(.container .subContainer)", container);
Run Code Online (Sandbox Code Playgroud)
但这会返回一个空集.有解决方案吗
谢谢.
我正在创建Android应用程序.我正在使用Espresso进行测试.
我有一个方法的活动:
public void render(Recipe recipe){
//draw the recipe to the activity
}
Run Code Online (Sandbox Code Playgroud)
我想测试这个方法是否正常工作.
不工作的解决方案1
我测试了以下内容
@Test
public void viewPaintsRecipes() {
final Activity activity = activityRule.launchActivity(new Intent());
((MainActivity)activity).render(Arrays.asList(new Recipe[]{recipe}));
onView(withId(R.id.text)).check(matches(withText(recipe.toString())));
}
Run Code Online (Sandbox Code Playgroud)
我得到一个例外.
只有创建视图层次结构的原始线程才能触及其视图.
不工作的解决方案2
我还尝试将两行放在主线程中由Handler运行的runnable中,但测试挂起.
我该怎么做到这一点?
笔记
我附上了完整的测试.请注意,我也使用匕首和Mockito.
@RunWith(AndroidJUnit4.class)
@LargeTest
public class MainActivityTestWithMockPresenter {
Recipe recipe = new Recipe("sampleTitle");
@Rule
public ActivityTestRule<MainActivity> activityRule = new ActivityTestRule(MainActivity.class, true, false);
@Mock
MainActivityPresenter mockPresenter;
@Mock
AndroidApplication mockContext;
@Before
public void insertMockedComponent(){
MockitoAnnotations.initMocks(this);
Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
AndroidApplication app = (AndroidApplication) instrumentation.getTargetContext().getApplicationContext();
MyModule mockedMyModule …
Run Code Online (Sandbox Code Playgroud) 我有一个关于java和并发的问题.
假设我有一个名为a的ThreadLocal变量.我使用CachedThreadPool来获取新线程.当一个线程被重新调用时,ThreadLocal变量会发生什么?它保持相同的值(因为它是一个相同的线程)或它开始为空(好像线程是新的)?
谢谢
我有rails的以下简单问题.
假设我有一个模型用户.在一个视图中,如果我这样做:
<%= render User.all %>
Run Code Online (Sandbox Code Playgroud)
将为每个用户调用并打印views/user/_user.html.erb中的文件视图.
如何更改此选项以使用特定视图?我需要这样的东西:
<%= render :data=>User.all :template=>"user/_user_2ndview.html"%>
Run Code Online (Sandbox Code Playgroud)
有帮助吗?提前致谢
我有一个HTML(phonegap)应用程序,它使用Google Maps API显示带有标记的地图.我希望这个应用程序可以脱机使用.我知道谷歌地图图块不能脱机使用(因为它的许可证).但是,我想要做的是使用没有瓷砖的地图界面.
在线时 - >显示瓷砖和标记.
离线时 - >仅显示标记.
但是,谷歌地图的js加载是复杂的,我还没有设法缓存它.
谢谢.
javascript ×4
android ×3
dagger-2 ×2
html ×2
html5 ×2
concurrency ×1
google-maps ×1
gradle ×1
java ×1
jquery ×1
mockito ×1
ruby ×1
testing ×1
thread-local ×1
threadpool ×1
twitter ×1
web-sql ×1