Skip to content

Instantly share code, notes, and snippets.

<style name="Theme.Monzo.Light" parent="Base.Theme.Monzo">
<item name="android:colorBackground">@color/off_white</item>
<item name="colorOnBackground">@color/navy</item>
<item name="colorSurface">@color/white</item>
<item name="colorOnSurface">@color/navy</item>
<item name="colorPrimary">@color/off_white</item>
<item name="colorOnPrimary">@color/navy</item>
<!-- ... -->
</style>
@ataulm
ataulm / adb-demo.sh
Last active May 1, 2019 07:35
Clean status bar for Android
#!/bin/sh
# source: https://android.jlelse.eu/clean-your-status-bar-like-a-pro-76c89a1e2c2f
# Add these aliases to your `~/.profile`
# alias demoOn='sh /Users/<username>/scripts/adb-demo.sh on'
# alias demoOff='sh /Users/<username>/scripts/adb-demo.sh off'
CMD=$1
if [[ $CMD != "on" && $CMD != "off" ]]; then
/**
* Handles {@link FeedbackFragment} with {@link ClickableSpan} (including {@link URLSpan]}). Adds
* earcon and pitch information to the fragment.
*
* @param fragment The fragment containing {@link ClickableSpan}.
*/
private static void handleClickableSpan(FeedbackFragment fragment) {
final Bundle speechParams = new Bundle(Bundle.EMPTY);
speechParams.putFloat(SpeechParam.PITCH, PITCH_CHANGE_HYPERLINK);
fragment.setSpeechParams(speechParams);
/**
* Handles the splitting of {@link URLSpan}s into multiple
* {@link FeedbackFragment}s.
*
* @param fragment The fragment containing the spannable text to process.
* @param span The individual {@link StyleSpan} that represents the span
*/
private static void handleStyleSpan(FeedbackFragment fragment, StyleSpan span) {
final int style = span.getStyle();
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_my)
story.text = writeFormattedStory()
}
private fun writeFormattedStory(): CharSequence {
return SpannableStringBuilder()
.append(createWithSpans("A Short Story", StyleSpan(Typeface.BOLD)))
.append("\n")
beginning.text = "A Short Story"
middle.text = "This is a short story"
end.text = "fin."
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/beginning"
android:layout_width="wrap_content"
AppBarExpander appBarExpander;
...
final RecyclerView view = (RecyclerView) layoutInflater.inflate(R.layout.view_season_page, container, false);
view.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
view.setLayoutManager(new LinearLayoutManager(container.getContext()) {
@Override
public int scrollVerticallyBy(int dy, RecyclerView.Recycler recycler, RecyclerView.State state) {
public interface AppBarExpander {
void expandAppBar();
void collapseAppBar();
}
public class SeasonsActivity extends AppCompatActivity implements AppBarExpander {
...
@Override
<scheme name="Material Dark" version="142" parent_scheme="Darcula">
<!--
1. Install the Roboto Mono Regular font - https://fonts.google.com/specimen/Roboto+Mono?selection.family=Roboto+Mono
2. Copy `Material Dark.icls` to `~/Library/Preferences/AndroidStudio3.0/colors/`
3. Restart AS
4. Preferences > Editor > Color and Fonts > select Material Dark and press OK
-->
<option name="FONT_SCALE" value="1.0" />