Skip to content

Instantly share code, notes, and snippets.

View Atsumi3's full-sized avatar
:octocat:

atsumi Atsumi3

:octocat:
View GitHub Profile
@Atsumi3
Atsumi3 / TextLinkUtil.java
Last active August 29, 2015 14:25
TextView , 及びTextView を継承しているクラスにリンク付きのテキストをセットする
package info.nukoneko.util;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.StringRes;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.widget.TextView;
@Atsumi3
Atsumi3 / reflection.java
Last active January 22, 2016 09:06
Java Generics & Reflection Memo
import java.lang.reflect.InvocationTargetException;
/**
* Created on 2016/01/22.
*/
public class Example {
public static void main(String[] args){
BaseClass baseClass = new BaseClass();
ExtendClass extendClass = new ExtendClass();
// Factory Method
public interface Human {
String getName();
}
/// Tanaka Factory
final class TanakaImpl implements Human {
@Override public String getName() {
return "Tanaka";
}
// Factory Method
public protocol Human {
func getName()->String;
}
/// Tanaka Factory
final class TanakaImpl : Human {
func getName() -> String {
return "Tanaka";
}
// Factory Method
public interface Human {
String getName();
}
/// Tanaka Factory
sealed class TanakaImpl : Human {
public string getName() {
return "Tanaka";
}
@Atsumi3
Atsumi3 / memo1
Last active October 11, 2016 05:33
NS*CalendarUnit -> NSCalendarUnit*
# pattern
## 3: NSDayCalendarUnit
## 17: NSYearForWeekOfYearCalendarUnit
NS(.{3,17})CalendarUnit
# replace
NSCalendarUnit$1
@Atsumi3
Atsumi3 / Main.java
Created June 14, 2018 09:40
Simple Dagger2 (Pure Java)
import dagger.Component;
import dagger.Module;
import dagger.Provides;
import javax.inject.Inject;
public class Main {
public static void main(String[] args) {
AnimalCry animalCry = new AnimalCry();
animalCry.cry();
@Atsumi3
Atsumi3 / VagrantFile
Created August 23, 2018 06:25
[VagrantFile] CentOS7 + docker-compose
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.provision "shell", inline: <<-SHELL
# update
sudo yum update
# add docker repo
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
@Atsumi3
Atsumi3 / KClassExtensions.kt
Created December 13, 2018 07:25
Create instance from KClass<out View>, with constructor parameters.
fun KClass<out View>.get(context: Context): View? = primaryConstructor?.call(context)
@Atsumi3
Atsumi3 / ViewListAdapter.kt
Last active December 13, 2018 08:18
カスタムビューの表示や動作チェックに使えるかも
// usage
val adapter = ViewListAdapter(listOf(TextView::class, ImageView::class, Button::class)).apply {
listener = object : ViewListAdapter.Listener {
override fun onViewSelect(selectedViewInstance: View?) {
when(selectedViewInstance) {
is TextView -> selectedViewInstance.text = "textView"
is ImageView -> selectedViewInstance.setImageResource(android.R.drawable.ic_input_add)
is Button -> selectedViewInstance.text = "button"
}
}