Skip to content

Instantly share code, notes, and snippets.

View YoungjaeKim's full-sized avatar

YoungjaeKim YoungjaeKim

View GitHub Profile
@YoungjaeKim
YoungjaeKim / QuestionViewActivity.java
Created May 12, 2013 15:27
ActionMode on ActionBarSherlock. A kind of context menu.
private final class ActionModeForReply implements ActionMode.Callback {
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
//Used to put dark icons on light action bar
menu.add(R.string.send_now)
.setIcon(R.drawable.ic_menu_send_now)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT | MenuItem.SHOW_AS_ACTION_ALWAYS);
return true;
@YoungjaeKim
YoungjaeKim / Text.java
Created May 12, 2013 15:28
기록물 시간 표시에 사용되는 친숙한 시간 표현 변환. 최적화 덜 됨.
/**
* 친숙한 시간 표기법.
* @param date 과거시간데이터.
* @return 한국어로 친숙한 시간 설명 출력.
* @exception 미래값을 넣으면 {@link IllegalArgumentException} 발생.
*/
public static String toFriendlyDateTimeString(DateTime date){
DateTime now = new DateTime();
if (date.isAfterNow())
throw new IllegalArgumentException("Future DateTime cannot be not handled.");
@YoungjaeKim
YoungjaeKim / NullableBooleanToVisibilityConverter.cs
Created June 10, 2013 18:23
More usable Boolean to Visibility converter for XAML converter
public class NullableBooleanToVisibilityConverter : IValueConverter
{
/// <summary>
/// Converts a value.
/// </summary>
/// <returns>
/// A converted value. If the method returns null, the valid null value is used.
/// </returns>
/// <param name="value">The value produced by the binding source.</param>
/// <param name="targetType">The type of the binding target property.</param>
@YoungjaeKim
YoungjaeKim / InverseBooleanConverter.cs
Created June 11, 2013 03:22
Inversed Boolean Converter for XAML.
public class InverseBooleanConverter : IValueConverter
{
/// <summary>
/// Converts a Boolean value as inversed.
/// </summary>
/// <returns>
/// A converted value. If the method returns null, the valid null value is used.
/// </returns>
/// <param name="value">The value produced by the binding source.</param>
@YoungjaeKim
YoungjaeKim / ZumoPush.java
Last active December 18, 2015 09:09
Azure Mobile Service push notification for Android (or Java).
private class PushAsyncTask extends AsyncTask<Void, Void, Void>{
protected Void doInBackground(Void... voids) {
HttpPost httpPost = new HttpPost("https://<DOMAIN>.azure-mobile.net/tables/<TABLE-NAME>");
httpPost.setHeader("Accept", "application/json");
httpPost.setHeader("Content-type", "application/json");
httpPost.setHeader("X-ZUMO-APPLICATION", "YOUR-AZURE-MOBILESERVICE-KEY-IS-HERE");
JSONObject jsonObject = new JSONObject();
try {
@YoungjaeKim
YoungjaeKim / zumo_server_script.java
Last active December 18, 2015 09:09
Azure Mobile Service server-side script.
function insert(item, user, request) {
request.execute({
success: function() {
// Write to the response and then send the notification in the background
request.respond();
if(item.platform == "ANDROID") {
push.gcm.send(item.channel, item.text, {
success: function(response) {
console.log('Push sent: ', item.channel, response, 'time: ', new Date());
}, error: function(error) {
@YoungjaeKim
YoungjaeKim / DragAndDrop.cs
Created July 20, 2013 15:21
GameObject Drag and Drop action for Unity3D
using UnityEngine;
using System.Collections;
public class DragAndDrop : MonoBehaviour
{
private bool _mouseState;
public GameObject Target;
public Vector3 screenSpace;
public Vector3 offset;
@YoungjaeKim
YoungjaeKim / BooleanToVisibilityConverter.cs
Created August 19, 2013 02:07
{Binding Converter={StaticResource BoolConverter}, ConverterParameter='!'} 식으로 사용하면 결과를 반대로 만들어줍니다.
/// <summary>
/// Value converter that translates true to <see cref="Visibility.Visible"/> and false to
/// <see cref="Visibility.Collapsed"/>.
/// </summary>
public sealed class BooleanToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string language)
{
var visible = (value is bool && (bool)value) ? Visibility.Visible : Visibility.Collapsed;
if (parameter == null)
@YoungjaeKim
YoungjaeKim / setAvatar
Created August 31, 2013 17:14
아바타 레이아웃 셋업
/**
* 아바타 셋업.
*
* @param avatarLayout
* @param avatar
*/
private void setAvatar(RelativeLayout avatarLayout, Avatar avatar) {
int resourceId;
// Head
ImageView imageViewHead = (ImageView) avatarLayout.findViewById(R.id.imageViewHead);
@YoungjaeKim
YoungjaeKim / include_avatar.xml
Created August 31, 2013 17:14
아바타 레이아웃
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/imageViewWholeBack"/>