Skip to content

Instantly share code, notes, and snippets.

View tprochazka's full-sized avatar

Tomáš Procházka tprochazka

View GitHub Profile
@tprochazka
tprochazka / ContractFragment.java
Created May 7, 2012 04:17 — forked from JakeWharton/ContractFragment.java
Base fragment to ensure the parent activity implements a contract interface.
/* Base fragment to ensure the parent activity implements a contract interface. */
public abstract class ContractFragment<T> extends Fragment {
private T mContract;
@Override
public void onAttach(Activity activity) {
try {
mContract = (T)activity;
} catch (ClassCastException e) {
throw new IllegalStateException(activity.getClass().getSimpleName()
/**
* Global one way asynchronous notification mechanism between parts of application based on Handler class.
* For example from service to activities.
*
* <p>
* Notification are always delivered to the UI thread.
* </p>
*
* <p>
* This class keep all listeners as weak reference so it is save to add whole activities as listeners, but do not use
@tprochazka
tprochazka / WidthEvaluator.java
Created May 10, 2012 19:45
How to animate width of any View
import android.animation.IntEvaluator;
import android.view.View;
import android.view.ViewGroup;
public final class WidthEvaluator extends IntEvaluator {
private final View view;
public WidthEvaluator(View dashboard) {
this.view = dashboard;
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite failures="1" time="2.671" errors="0" skipped="0" tests="104" name="com.integralblue.httpresponsecache.compat.libcore.net.http.HttpResponseCacheTest">
<properties>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="sun.boot.library.path" value="c:\Program Files (x86)\Java\jdk1.7.0\jre\bin"/>
<property name="java.vm.version" value="21.0-b17"/>
<property name="user.country.format" value="CZ"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="http://java.oracle.com/"/>
<property name="path.separator" value=";"/>
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite failures="0" time="6.589" errors="2" skipped="0" tests="104" name="com.integralblue.httpresponsecache.compat.libcore.net.http.HttpResponseCacheTest">
<properties>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="sun.boot.library.path" value="/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/amd64"/>
<property name="java.vm.version" value="19.1-b02"/>
<property name="java.vm.vendor" value="Sun Microsystems Inc."/>
<property name="java.vendor.url" value="http://java.sun.com/"/>
<property name="path.separator" value=":"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
@tprochazka
tprochazka / gist:3522476
Created August 30, 2012 04:48
FizzBuzz
public class FizzBuzz {
/**
* @param args
*/
public static void main(String[] args) {
for (int i=1; i <= 100; i++) {
boolean m3 = i%3==0;
boolean m5 = i%5==0;
11-12 06:29:15.217: D/MainActivity(20131): onRestart
11-12 06:29:15.217: D/MainActivity(20131): onStart
11-12 06:29:15.217: D/AboutFragment(20131): onStart
11-12 06:29:15.217: D/BottomFragment(20131): onStart
11-12 06:29:15.217: D/RightFragment(20131): onStart
11-12 06:29:15.217: D/LeftFragment(20131): onStart
11-12 06:29:15.217: D/MainActivity(20131): onResume
11-12 06:29:15.217: D/ActivityBase(20131): doBindService PtpService
11-12 06:29:15.240: D/ActivityBase(20131): doBindService UsbSerialService
11-12 06:29:15.240: D/ActivityBase(20131): Creating handler ...
package com.android.vending.expansion.zipfile;
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
/*
* Copyright (C) 2013 Tomáš Procházka
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
[INFO] trouble processing "javax/xml/bind/annotation/XmlAccessorType.class":
[INFO]
[INFO] Ill-advised or mistaken usage of a core class (java.* or javax.*)
[INFO] when not building a core library.
[INFO]
[INFO] This is often due to inadvertently including a core library file
[INFO] in your application's project, when using an IDE (such as
[INFO] Eclipse). If you are sure you're not intentionally defining a
[INFO] core class, then this is the most likely explanation of what's
[INFO] going on.