【Android】Activity/Fragment周りのデータ受け渡し方法(Java)

はじめに

Activity/Fragment周りのデータ受け渡しの方法まとめです。
Javaです。

ActivityからActivity

送信元のActivity

1
2
3
4
Intent intent = new Intent(this, ToActivity.class);
intent.putExtra("NAME", "太郎");
startActivity(intent);
finish();

送信先のActivity(ToActivity)

1
2
3
4
5
6
7
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

Intent intent = getIntent();
String name = intent.getStringExtra("NAME");
}

ポイントはbundleが不要なところです。

ActivityからFragment

送信元のActivity

1
2
3
4
5
6
7
8
ToFragment fragment = new ToFragment();
Bundle bundle = new Bundle();
bundle.putString("NAME", "太郎");
fragment.setArguments(bundle);
getSupportFragmentManager()
.beginTransaction()
.add(android.R.id.content, fragment)
.commit();

送信先のFragment(ToFragment)

1
2
3
4
5
6
7
8
9
  @Override
public void onResume() {
super.onCreate();

Bundle args = getArguments();
if (args != null) {
String name = args.getString("NAME");
}
}

ポイントはbundleを使うところです。

FragmentからActivity

確認中

FragmentからFragment

確認中

【読書メモ】Measure What Matters

第1章 グーグル、OKRと出会う

Googleの最初期から今もずっと使ってる
OKRはすごいぞ〜

第2章 OKRの父

OKRはGoogleが有名だが、元はインテルだったらしい

第3章 クラッシュ作戦――インテルのケーススタディ

インテルでのOKR使ってみた結果
良い感じだった

第4章 OKRの威力? 優先事項にフォーカスし、コミットする

OKRの具体的な設定方法の話
3〜5個くらいが良い、とか。

第5章 フォーカスする――リマインドのケーススタディ

リマインドアプリでもOKRはうまくいったよ〜

第6章 コミットする――ヌナのケーススタディ

ヌナって会社でもOKRは機能したよ〜

第7章 OKRの威力? アラインメントと連携がチームワークを生む

それぞれのチームのOKRを社内公開することで、別のチームメンバーによしなに声をかけて連携してくれるかもしれない

第8章 アラインメント――マイフィットネス・パルのケーススタディ

マイフィットネス・パルでもOKRは機能したよ

第9章 連携する――インテュイットのケーススタディ

インテュイットでもOKRは機能したよ

第10章 OKRの威力? 進捗をトラッキングし、責任を明確にする

週次で振り返ろう
柔軟に変更しよう
100%達成してたらそれはそれで良くないよ
とにかく振り返り大事

第11章 トラッキング――ゲイツ財団のケーススタディ

ゲイツ財団でもOKRは機能したよ
ビジョンが大きすぎて前進しているか分からなくなる時とかにもOKRは有効
ゲイツ財団は新興にしていきなり2兆円くらいのお金で開始した
マラリアの撲滅のために頑張っている

第12章 OKRの威力? 驚異的成果に向けてストレッチする

目標はあえてめちゃくちゃ高くしてみると予想以上の成果が出るかも

第13章 ストレッチ――グーグル・クロームのケーススタディ

Chromeブラウザの話

第14章 ストレッチ――ユーチューブのケーススタディ

YouTubeのOKR
当時は視聴時間10億時間が目標だったらしい
その共通の目標があったからうまくいったと
「大きな石」理論は確かにOKRっぽい考え
目の前の小さな仕事ばかりやっていたらいつの間にか大きな石を入れる隙間がなくなっているという
ただ個人的に小さな仕事をたくさんやる方が好きなんだよなあ

第2部 働き方の新時代

第15章 継続的パフォーマンス管理――OKRとCFR

年に1回評価するより、もっと頻繁に評価する方が良いらしい
月に1回の1on1とか
あと360度評価、つまり1人のマネージャーが評価するのではなく、同僚からの評価とかが良いらしい
あとOKRと評価は切り離して考える方が良い、目標がいつも適切とは限らないので

第16章 年次勤務評定を廃止する――アドビのケーススタディ

1年に1回の評価じゃ遅い
もっと細かい定期的な評価の方が良い

第17章 明日はもっとおいしく焼こう――ズーム・ピザのケーススタディ

OKRはたくさんあるやることから重要なことを選択し、集中するためのツール

第18章 文化

文化は大切

第19章 文化の変革――ルメリスのケーススタディ

ルメリスは文化を刷新するために人を75%も入れ替えたらしい

第20章 文化の変革――ボノのONEキャンペーンのケーススタディ

第21章 これからの目標

【plantUML】VSCodeでのエクスポート設定を変更する

plantUMLをVSCodeでエクスポートすると変なフォルダに作成されちゃいました。
以下の設定にするとpuフォルダと同じ所に作成されて良い感じになりました。

1
2
3
"plantuml.exportOutDir": ".",
"plantuml.exportFormat": "png",
"plantuml.exportSubFolder": false,

ちなみにファイル名はpuファイルのファイル名ではなく、1行目の@startuml hogeの部分が使われますのでご注意を。

cocoapodsのバージョンが変更できない時の解決策

cocoapodsのバージョンが変更できない時の解決策

他記事だとbrewではなくgemで管理する方法がよく紹介されていましたが、
自分の環境だとむしろgemだとダメでbrewだとうまくいきました。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 変更前の状態
pod --version
# 1.8.4
which pod
# /Users/hoge/.rbenv/shims/pod

# gem→brewに変更する
gem uninstall cocoapods
brew install cocoapods
rm '/usr/local/bin/pod'
rm '/usr/local/bin/xcodeproj'
brew link cocoapods

pod --version
# 1.11.3
which pod
# /usr/local/bin/pod

BitbucketでGitリモート認証エラーになった

いつものようにgit pullしたら以下のエラーに遭遇した。

1
2
3
4
remote: Bitbucket Cloud recently stopped supporting account passwords for Git authentication.
remote: See our community post for more details: https://atlassian.community/t5/x/x/ba-p/1948231
remote: App passwords are recommended for most use cases and can be created in your Personal settings:
remote: https://bitbucket.org/account/settings/app-passwords/

なんか認証周りが変わったらしい。
bitbucketにwebでログインするパスワードだと通らなくなった。

代わりに以下のURLからアプリパスワードとかいうの設定して、それを入力したら通るようになった。

https://bitbucket.org/account/settings/app-passwords/

普段はVSCodeのメニューからgit pullしてて、その場合だと上のエラーメッセージが出ないのでハマった。。

Android Studioでエラー直前で止まってくれる設定方法

Android Studioで実行したアプリがエラーで落ちる時に、落ちる直前で止まってくれる方法です。

以下の画像の中のCreat breakpointのテキストをクリックすればOKです。

昔調べたけどやり方分からなくて、ログ見てたらたまたま気付いた。
もっと早くに知りたかった。。

【Android開発】ImageViewをDataBindingする方法【Kotlin】

ImageVIewにDataBindingする方法です。

まずはレイアウトファイル
hoge.xml

1
2
<ImageView
android:id="@+id/icon_menu"/>

次にFragment or Activityファイル
hoge.kt

1
binding.iconMenu.setImageResource(R.drawable.ic_action_hoge)

以上。

めちゃくちゃハマったけど最終的にシンプルに書けば良いだけだった。。
ググると複雑なやり方が出てくるのはどういうアレなんだろう。
これが正式なやり方じゃないかもだけど、とりあえず動いたので良かった。

【Salesforce】Apexの使い方メモ

Apexとは

Salesforceの開発に特化したプログラミング言語
→ライブラリのインストール不要でいきなりオブジェクトにアクセスできたりする
雰囲気はJavaに似てる

【kotlin】FragmentでViewBindingを導入する方法【Android開発】

2022/5/26追記
公式ページが十分分かりやすいのでこれ見れば十分ですね。。
https://developer.android.com/topic/libraries/view-binding

以下、元の文章。

kotlinでFragmentのViewBindingを導入する方法です。

Fragmentのkotlinファイルで以下の通りに実装します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment

class WalkThroughFirstFragment : Fragment(), View.OnClickListener {

private lateinit var binding: FragmentWalkThroughBinding

override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View {
binding = FragmentWalkThroughBinding.inflate(inflater, container, false)
return binding.root
}

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)

binding.walkThroughButton1.setOnClickListener(this)
}

override fun onClick(view: View?) {

val intent = Intent(activity, SettingActivity::class.java)
startActivity(intent)
}
}

以上です。

2021年振り返り

はじめに

2021年を振り返ります!
ちゃんと振り返らないと何もしてない気がするのよね。。

何やったかほとんど覚えていないので、Twitterをベースに振り返ってみようと思います。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×