An open API service indexing awesome lists of open source software.

https://github.com/numeroanddev/android_summit_2018_note


https://github.com/numeroanddev/android_summit_2018_note

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        

# android_summit_2018_note

## [Preferential Practices for Preferences](https://youtu.be/PS9jhuHECEQ)
### androidx.preference
* API 14 以降
* いろんな OS バージョンで共通のデザイン

### SharedPreference
* AppCompatActivity > PreferenceFragmentCompat
* app になってる
```









```

* `EditTextPreference` なんてあったけ?
* 1.1.0-alpha1 から `useSimpleSummaryProvider` で入力内容を summary に自動で追加

```


```

* 1.1.0-alpha1 から? `dependency` で `SwitchPreference` とかの key を渡して、 enable を自動で更新

```

```

### Dynamic Summaries

* 値の変更を監視して summary を動的に変更できる

```
val syncSummaryProvider = SummaryProvider { preference ->
if (preference.isChecked) {
"Checked"
} else {
"Non checked"
}
}

findPreference("enable_sync").summaryProvider = syncSummaryProvider
```

### Multiple screen architecture

* Activity > Fragment > Hierarchy を Activity > Settings Screen に
* Preference 間の画面遷移が簡単に

```



```

```
class SettingsActovoty : AppCompatActicity(), PreferenceFragmentCompat.OnPreferenceStartFragmentCallback {
override fun onPreferenceStartFragment(caller: PreferenceFragmentCompat, pref: Preference):Boolean {
// tansition を独自で実装する場合は true
// 標準処理にお任せの場合は false
}
}
```

## [Get Animated](https://youtu.be/N_x7SV3I3P0) [WIP]

* android.view.animation が (Consider)Depereted
WindowAnimation や Fragment のアニメーションはこれを使用している

* android.animation を使うことを推奨

* ObjectAnimator はリフレクション使うからあまりよろしくない

```
// この alpha が問題
ObjectAnimator.ofFloat(view, "alpha", 1f, 0f).apply {
duration = 100
}.start()

ObjectAnimator.ofFloat(view, View.ALPHA, 1f, 0f).apply {
duration = 100
}.start()
```

* PropertyValuesHolder
```
val scaleX = PropertyValuesHolder.ofFloat(View.SCALE_X, 0.5f, 1f)
```

## [Getting the Most from the New Multi-Camera API](https://youtu.be/u38wOv2a_dA)

[Medium](https://medium.com/androiddevelopers/getting-the-most-from-the-new-multi-camera-api-5155fb3d77d9)