{"id":2380,"date":"2023-04-29T11:43:35","date_gmt":"2023-04-29T02:43:35","guid":{"rendered":"https:\/\/edu.ujhb.org\/?p=2380"},"modified":"2023-04-29T11:43:35","modified_gmt":"2023-04-29T02:43:35","slug":"react-native%e5%85%a5%e9%96%80%ef%bc%88%e6%97%a5%e6%9c%ac%e8%aa%9e%e7%89%88%ef%bc%89","status":"publish","type":"post","link":"https:\/\/edu.ujhb.org\/?p=2380","title":{"rendered":"React Native\u5165\u9580\uff08\u65e5\u672c\u8a9e\u7248\uff09"},"content":{"rendered":"\n<p>IT\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30d3\u30c7\u30aa\u3092\u3084\u308a\u305f\u3044\u306e\u3067\u3059\u304c\u3001\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u306b\u5fdc\u3058\u3066\u30d3\u30c7\u30aa\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u914d\u7f6e\u3057\u3066\u3044\u305f\u3060\u3051\u307e\u3059\u304b\u3002 React Native\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u304b\u3089\u59cb\u3081\u307e\u3057\u3087\u3046\u3002 \u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>\u3082\u3061\u308d\u3093\u3067\u3059\uff01 \u4ee5\u4e0b\u306f\u3001\u516c\u5f0f\u306eReact Native\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u4e00\u822c\u7684\u306a\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u306b\u57fa\u3065\u3044\u3066\u30b3\u30f3\u30d1\u30a4\u30eb\u3055\u308c\u305f\u30d3\u30c7\u30aa\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u6982\u8981\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u306b\u53cd\u5fdc\u3059\u308b\u305f\u3081\u306e\u7d39\u4ecb\n<ul class=\"wp-block-list\">\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6\u3068\u306f<\/li>\n\n\n\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6\u3068\u30ea\u30a2\u30af\u30c8\u306e\u9055\u3044<\/li>\n\n\n\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u5229\u70b9<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u74b0\u5883\u8a2d\u5b9a\n<ul class=\"wp-block-list\">\n<li>\u30ce\u30fc\u30c9.js\u3068npm \/ yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059<\/li>\n\n\n\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6CLI\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n\n\n\n<li>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b<\/li>\n\n\n\n<li>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u8d77\u52d5<\/li>\n\n\n\n<li>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u57fa\u790e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\n<ul class=\"wp-block-list\">\n<li>\u773a\u3081\u308b<\/li>\n\n\n\n<li>\u30c6\u30ad\u30b9\u30c8<\/li>\n\n\n\n<li>\u753b\u50cf<\/li>\n\n\n\n<li>\u30c6\u30ad\u30b9\u30c8\u5165\u529b<\/li>\n\n\n\n<li>\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc<\/li>\n\n\n\n<li>\u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\n<ul class=\"wp-block-list\">\n<li>\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8<\/li>\n\n\n\n<li>\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8<\/li>\n\n\n\n<li>\u5171\u901a\u306e\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\n<ul class=\"wp-block-list\">\n<li>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6<\/li>\n\n\n\n<li>\u30bf\u30c3\u30c1\u30e3\u30d6\u30eb\u30cf\u30a4\u30e9\u30a4\u30c8<\/li>\n\n\n\n<li>\u30bf\u30c3\u30c1\u53ef\u80fd\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306a\u3057<\/li>\n\n\n\n<li>\u30dc\u30bf\u30f3<\/li>\n\n\n\n<li>\u30a2\u30e9\u30fc\u30c8<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u822a\u6cd5\n<ul class=\"wp-block-list\">\n<li>\u30ea\u30a2\u30af\u30c8\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n\n\n\n<li>\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306e\u4f5c\u6210<\/li>\n\n\n\n<li>\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b<\/li>\n\n\n\n<li>\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306e\u4f5c\u6210<\/li>\n\n\n\n<li>\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3068\u30eb\u30fc\u30c8\u69cb\u6210\u3092\u6e21\u3059<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u56fd\u55b6\n<ul class=\"wp-block-list\">\n<li>\u53cd\u5fdc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30c6\u30fc\u30bf\u30b9<\/li>\n\n\n\n<li>\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 API \u3092\u4f7f\u7528\u3059\u308b<\/li>\n\n\n\n<li>\u30ea\u30c0\u30c3\u30af\u30b9\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\n<ul class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u6982\u8981<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f5c\u6210\u3059\u308b<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u547c\u3073\u51fa\u3059<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u6982\u8981<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f5c\u6210<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\n<ul class=\"wp-block-list\">\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API<\/li>\n\n\n\n<li>\u30ec\u30a4\u30a2\u30a6\u30c8\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3<\/li>\n\n\n\n<li>\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fc<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b<\/li>\n\n\n\n<li>\u30d4\u30e5\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3059\u308b<\/li>\n\n\n\n<li>\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u907f\u3051\u308b<\/li>\n\n\n\n<li>\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"11\">\n<li>\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3068\u767a\u884c<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30a2\u30f3\u30c9\u30ed\u30a4\u30c9\u30a2\u30d7\u30ea\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b<\/li>\n\n\n\n<li>iOS \u30a2\u30d7\u30ea\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b<\/li>\n\n\n\n<li>\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"12\">\n<li>\u5b9f\u8df5\u30d7\u30ed\u30b8\u30a7\u30af\u30c8<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u7d39\u4ecb\u3068\u30cb\u30fc\u30ba\u5206\u6790<\/li>\n\n\n\n<li>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08<\/li>\n\n\n\n<li>\u6a5f\u80fd\u3092\u6bb5\u968e\u7684\u306b\u5b9f\u88c5\u3059\u308b<\/li>\n\n\n\n<li>\u6982\u8981\u3068\u5c55\u671b<\/li>\n<\/ul>\n\n\n\n<p>\u3053\u306e\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\u3092\u4f7f\u7528\u3057\u3066\u3001\u4e00\u9023\u306e React Native \u30d3\u30c7\u30aa \u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u8a73\u7d30\u304c\u5fc5\u8981\u306a\u5834\u5408\u306f\u3001\u304a\u6c17\u8efd\u306b\u304a\u77e5\u3089\u305b\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6\u3068\u306f\u4f55\u304b\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u3053\u306e\u4f1a\u8a71\u3067\u4f7f\u7528\u3055\u308c\u305f\u4ee5\u524d\u306e\u30e2\u30c7\u30eb\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002\u6700\u65b0\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u30e2\u30c7\u30eb\u306b\u5207\u308a\u66ff\u3048\u307e\u3057\u305f\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native\u306f\u3001\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3059\u308b\u305f\u3081\u306eFacebook\u306e\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3059\u3002 \u3053\u308c\u306b\u3088\u308a\u3001\u958b\u767a\u8005\u306fJavaScript\u3068React\u3092\u4f7f\u7528\u3057\u3066iOS\u3068Android\u306e\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3067\u304d\u308b\u305f\u3081\u3001\u305d\u308c\u305e\u308cObjective-C\/Swift\u3068Java\/Kotlin\u306e\u5b66\u7fd2\u3068\u4f7f\u7528\u3068\u3044\u3046\u9762\u5012\u306a\u30d7\u30ed\u30bb\u30b9\u3092\u56de\u907f\u3067\u304d\u307e\u3059\u3002 React Native \u306f JavaScript \u30b3\u30fc\u30c9\u3092\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u306b\u5909\u63db\u3057\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 \u3064\u307e\u308a\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306fWeb\u30da\u30fc\u30b8\u3084Web\u30d3\u30e5\u30fc\u3067\u306f\u306a\u304f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u5b9f\u884c\u3055\u308c\u308b\u305f\u3081\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u304c\u5411\u4e0a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native\u306fReact\u306e\u30a2\u30a4\u30c7\u30a2\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e2\u30c7\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304a\u308a\u3001\u305d\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068API\u306fReact\u306e\u30b5\u30d6\u30bb\u30c3\u30c8\u3067\u3042\u308b\u305f\u3081\u3001React\u306b\u7cbe\u901a\u3057\u3066\u3044\u308b\u958b\u767a\u8005\u306f\u3059\u3050\u306bReact Native\u3092\u4f7f\u3044\u59cb\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 React Native\u306f\u3001\u30b9\u30af\u30ed\u30fc\u30eb\u30ea\u30b9\u30c8\u3001\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u51e6\u7406\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u547c\u3073\u51fa\u3057\u306a\u3069\u3001\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u958b\u767a\u306b\u56fa\u6709\u306e\u591a\u304f\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068API\u3082\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native\u306e\u3082\u3046\u4e00\u3064\u306e\u5229\u70b9\u306f\u3001\u30b3\u30fc\u30c9\u306e\u518d\u5229\u7528\u6027\u3067\u3059\u3002 \u958b\u767a\u8005\u306f\u3001\u540c\u3058\u30b3\u30fc\u30c9\u30d9\u30fc\u30b9\u3092\u4f7f\u7528\u3057\u3066iOS\u30a2\u30d7\u30ea\u3068Android\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3067\u304d\u308b\u305f\u3081\u3001\u958b\u767a\u52b9\u7387\u304c\u5411\u4e0a\u3057\u3001\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u30b3\u30b9\u30c8\u304c\u524a\u6e1b\u3055\u308c\u307e\u3059\u3002 React Native\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3068\u7d71\u5408\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u3001\u958b\u767a\u8005\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u9ad8\u6027\u80fd\u306e\u30b3\u30a2\u6a5f\u80fd\u3092\u8a18\u8ff0\u3057\u3001\u305d\u308c\u3092React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u4f7f\u7528\u3059\u308b\u305f\u3081\u306bReact Native\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3064\u307e\u308a\u3001React Native\u306f\u3001\u958b\u767a\u8005\u304c\u9ad8\u6027\u80fd\u306e\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3092\u3059\u3070\u3084\u304f\u69cb\u7bc9\u3059\u308b\u306e\u306b\u5f79\u7acb\u3064\u5f37\u529b\u306a\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u958b\u767a\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3042\u308a\u3001\u958b\u767a\u8005\u304c\u3055\u307e\u3056\u307e\u306a\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u306e\u6a5f\u80fd\u3092\u7c21\u5358\u306b\u5b9f\u88c5\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u8c4a\u5bcc\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068API\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u3068React ChatGPT\u306e\u9055\u3044\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React\u3068React Native\u306f\u3069\u3061\u3089\u3082Facebook\u306e\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3042\u308a\u3001\u3069\u3061\u3089\u3082\u540c\u69d8\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u5316\u3055\u308c\u305f\u958b\u767a\u30a2\u30a4\u30c7\u30a2\u3068\u4eee\u60f3DOM\u624b\u6cd5\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 \u305f\u3060\u3057\u3001\u305d\u308c\u3089\u306e\u9593\u306b\u306f\u3044\u304f\u3064\u304b\u306e\u9055\u3044\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30bf\u30fc\u30b2\u30c3\u30c8\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u304c\u7570\u306a\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React\u306f\u3001\u4e3b\u306b\u30d6\u30e9\u30a6\u30b6\u3067\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306b\u7126\u70b9\u3092\u5f53\u3066\u305fWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u69cb\u7bc9\u3059\u308b\u305f\u3081\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3059\u3002 \u4e00\u65b9\u3001React Native\u306f\u3001\u30e2\u30d0\u30a4\u30eb\u30c7\u30d0\u30a4\u30b9\u3067\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306b\u7126\u70b9\u3092\u5f53\u3066\u305f\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3059\u308b\u305f\u3081\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u304c\u7570\u306a\u308b<\/li>\n<\/ol>\n\n\n\n<p>React \u306f\u30d6\u30e9\u30a6\u30b6\u306e DOM \u3092\u4f7f\u7528\u3057\u3066 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u3001React Native \u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306b\u3088\u3063\u3066\u63d0\u4f9b\u3055\u308c\u308b UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 React Native \u306f\u3001JavaScript \u30b3\u30fc\u30c9\u3092\u4ecb\u3057\u3066\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u5236\u5fa1\u3057\u3001\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e UI \u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u53ef\u80fd\u306b\u3057\u307e\u3059\u3002 React Native\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308b\u305f\u3081\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b3\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u7570\u306a\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React\u3068React Native\u306f\u3069\u3061\u3089\u3082\u540c\u69d8\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u5316\u3055\u308c\u305f\u958b\u767a\u30a2\u30a4\u30c7\u30a2\u3092\u6301\u3063\u3066\u3044\u307e\u3059\u304c\u3001\u30b3\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u7570\u306a\u308a\u307e\u3059\u3002 React\u306e\u30b3\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u5c0f\u9053\u5177\u3001\u72b6\u614b\u3001\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u306a\u3069\u304c\u542b\u307e\u308c\u3001React\u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30b3\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30d3\u30e5\u30fc\u3001\u30c6\u30ad\u30b9\u30c8\u3001\u753b\u50cf\u3001\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc\u3001\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u3001\u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8\u306a\u3069\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30e2\u30d0\u30a4\u30eb\u30c7\u30d0\u30a4\u30b9\u306b\u9069\u5fdc\u3059\u308b\u3088\u3046\u306b\u7279\u5225\u306b\u8a2d\u8a08\u3055\u308c\u3066\u304a\u308a\u3001\u305d\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3082Web\u3068\u306f\u7570\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30b9\u30bf\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u304c\u7570\u306a\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React\u306fCSS\u30b9\u30bf\u30a4\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3092\u5236\u5fa1\u3057\u307e\u3059\u304c\u3001React Native\u306f\u72ec\u81ea\u306e\u30b9\u30bf\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002 React Native\u306e\u30b9\u30bf\u30a4\u30ea\u30f3\u30b0\u306f\u3001CSS\u306b\u4f3c\u305fJavaScript\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u8a18\u8ff0\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001CSS\u306e\u69cb\u6587\u3068\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3042\u308a\u307e\u305b\u3093\u3002 \u540c\u6642\u306b\u3001React Native\u306f\u3001UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306e\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u306e\u3088\u3046\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u30b7\u30b9\u30c6\u30e0\u3082\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001React\u3068React Native\u306f\u591a\u304f\u306e\u985e\u4f3c\u70b9\u3092\u5171\u6709\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u7570\u306a\u308b\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3068\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u65b9\u6cd5\u3001\u304a\u3088\u3073\u7570\u306a\u308b\u30b3\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30b9\u30bf\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3092\u5bfe\u8c61\u3068\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u958b\u767a\u8005\u306f\u305d\u308c\u3089\u3092\u4f7f\u7528\u3059\u308b\u305f\u3081\u306b\u7570\u306a\u308b\u30b9\u30ad\u30eb\u3068\u77e5\u8b58\u3092\u5b66\u3076\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native ChatGPT\u306e\u5229\u70b9\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3068\u3057\u3066\u3001React Native\u306b\u306f\u6b21\u306e\u5229\u70b9\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b5\u30dd\u30fc\u30c8<\/li>\n<\/ol>\n\n\n\n<p>React Native\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u540c\u3058\u30b3\u30fc\u30c9\u30d9\u30fc\u30b9\u3092\u4f7f\u7528\u3057\u3066iOS\u30a2\u30d7\u30ea\u3068Android\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3067\u304d\u308b\u305f\u3081\u3001\u958b\u767a\u52b9\u7387\u304c\u5411\u4e0a\u3057\u3001\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u30b3\u30b9\u30c8\u304c\u524a\u6e1b\u3055\u308c\u307e\u3059\u3002 \u3053\u306e\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b5\u30dd\u30fc\u30c8\u306f\u3001React Native\u306e\u7279\u5b9a\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068API\u306e\u4f7f\u7528\u3001\u304a\u3088\u3073\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u547c\u3073\u51fa\u3057\u306b\u3088\u3063\u3066\u5b9f\u73fe\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u9ad8\u6027\u80fd\u3068\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9<\/li>\n<\/ol>\n\n\n\n<p>React Native\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001WebView\u3067\u5b9f\u884c\u3059\u308b\u4ee3\u308f\u308a\u306b\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u305f\u3081\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u304c\u5411\u4e0a\u3057\u307e\u3059\u3002 React Native\u306f\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u3082\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u304a\u308a\u3001\u3088\u308a\u30b9\u30e0\u30fc\u30ba\u3067\u81ea\u7136\u306a\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5b9f\u73fe\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u958b\u767a\u306e\u7c21\u7d20\u5316<\/li>\n<\/ol>\n\n\n\n<p>React Native\u306fReact\u306e\u601d\u8003\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e2\u30c7\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u958b\u767a\u8005\u306f\u540c\u3058\u30b3\u30fc\u30c9\u30b9\u30bf\u30a4\u30eb\u3068\u69cb\u9020\u3092\u4f7f\u7528\u3057\u3066\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3092\u69cb\u7bc9\u3067\u304d\u308b\u305f\u3081\u3001\u5b66\u7fd2\u30b3\u30b9\u30c8\u3068\u958b\u767a\u306e\u96e3\u3057\u3055\u304c\u8efd\u6e1b\u3055\u308c\u307e\u3059\u3002 \u3055\u3089\u306b\u3001React Native\u306f\u3001\u958b\u767a\u8005\u304c\u3055\u307e\u3056\u307e\u306a\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u6a5f\u80fd\u3092\u7c21\u5358\u306b\u5b9f\u88c5\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u8c4a\u5bcc\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068API\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u9ad8\u901f\u5316<\/li>\n<\/ol>\n\n\n\n<p>React Native\u306fJavaScript\u3092\u958b\u767a\u8a00\u8a9e\u3068\u3057\u3066\u4f7f\u7528\u3057\u3001\u30b3\u30f3\u30d1\u30a4\u30eb\u3084\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u306e\u5fc5\u8981\u6027\u3092\u56de\u907f\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u3088\u308a\u9ad8\u901f\u306a\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u304c\u53ef\u80fd\u306b\u306a\u308a\u307e\u3059\u3002 \u958b\u767a\u8005\u306f\u3001\u30a2\u30d7\u30ea\u3092\u518d\u30b3\u30f3\u30d1\u30a4\u30eb\u3057\u3066\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b\u3053\u3068\u306a\u304f\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3067\u76f4\u63a5\u30b3\u30fc\u30c9\u3092\u30c7\u30d0\u30c3\u30b0\u304a\u3088\u3073\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u306e\u30b5\u30dd\u30fc\u30c8\u3068\u8c4a\u5bcc\u306a\u30ea\u30bd\u30fc\u30b9<\/li>\n<\/ol>\n\n\n\n<p>React Native\u306b\u306f\u5927\u898f\u6a21\u306a\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u3068\u6d3b\u767a\u306a\u958b\u767a\u8005\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u304c\u3042\u308b\u305f\u3081\u3001\u8c4a\u5bcc\u306a\u30ea\u30bd\u30fc\u30b9\u3068\u30b5\u30dd\u30fc\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002 \u958b\u767a\u8005\u306f\u3001\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u304b\u3089\u7d4c\u9a13\u3068\u77e5\u8b58\u3092\u5f97\u3066\u3001\u554f\u984c\u3092\u89e3\u6c7a\u3057\u3001\u958b\u767a\u52b9\u7387\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3068\u3057\u3066\u3001React Native\u306b\u306f\u3001\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b5\u30dd\u30fc\u30c8\u3001\u9ad8\u6027\u80fd\u3068\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3001\u7c21\u7d20\u5316\u3055\u308c\u305f\u958b\u767a\u3001\u3088\u308a\u901f\u3044\u53cd\u5fa9\u901f\u5ea6\u3001\u8c4a\u5bcc\u306a\u30ea\u30bd\u30fc\u30b9\u3068\u3044\u3046\u5229\u70b9\u304c\u3042\u308a\u3001\u958b\u767a\u8005\u304c\u9ad8\u6027\u80fd\u306e\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u8fc5\u901f\u306b\u69cb\u7bc9\u3059\u308b\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>Node.js\u3068npm \/ yarnChatGPT\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>Node.js\u3068npm \/ yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3053\u3068\u306f\u3001React Native\u3092\u4f7f\u7528\u3057\u3066\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3092\u958b\u767a\u3059\u308b\u305f\u3081\u306e\u524d\u63d0\u6761\u4ef6\u3067\u3042\u308a\u3001\u8a73\u7d30\u306a\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30ce\u30fc\u30c9.js\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/li>\n<\/ol>\n\n\n\n<p>Node .js \u306f Chrome V8 \u30a8\u30f3\u30b8\u30f3\u3092\u30d9\u30fc\u30b9\u306b\u3057\u305f JavaScript \u30e9\u30f3\u30bf\u30a4\u30e0\u74b0\u5883\u3067\u3042\u308a\u3001\u958b\u767a\u8005\u306f JavaScript \u8a00\u8a9e\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30fc\u30d0\u30fc\u30b5\u30a4\u30c9\u30b3\u30fc\u30c9\u3092\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 React Native \u3067\u306f\u3001JavaScript \u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306b\u30ce\u30fc\u30c9 .js \u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u305f\u3081\u3001\u6700\u521d\u306b\u30ce\u30fc\u30c9 .js\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>Node .js\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30d1\u30c3\u30b1\u30fc\u30b8\u306f\u3001Node.js\u306e\u516c\u5f0fWeb\u30b5\u30a4\u30c8\u306e\u30a2\u30c9\u30ec\u30b9\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3067\u304d\u307e\u3059<a href=\"https:\/\/nodejs.org\/en\/download\/%E3%80%82%E6%A0%B9%E6%8D%AE%E8%87%AA%E5%B7%B1%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E7%89%88%E6%9C%AC%E4%B8%8B%E8%BD%BD%E5%AF%B9%E5%BA%94%E7%9A%84%E5%AE%89%E8%A3%85%E5%8C%85%EF%BC%8C%E7%84%B6%E5%90%8E%E8%BF%9B%E8%A1%8C%E5%AE%89%E8%A3%85%E5%8D%B3%E5%8F%AF%E3%80%82\">:https:\/\/nodejs.org\/en\/download\/\u3002 \u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306b\u5fdc\u3058\u3066\u5bfe\u5fdc\u3059\u308b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/a><\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>npm \/ yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>npm \u306f Node \u306e.js\u7528\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30eb\u3067\u3001JavaScript \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u7ba1\u7406\u3057\u3066\u3044\u307e\u3059\u3002 React Native\u306fnpm\u3092\u4f7f\u7528\u3057\u3066\u3001\u3055\u307e\u3056\u307e\u306a\u4f9d\u5b58\u30e9\u30a4\u30d6\u30e9\u30ea\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u7ba1\u7406\u3057\u307e\u3059\u3002 \u30ce\u30fc\u30c9.js\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3068\u3001npm\u306f\u305d\u308c\u3082\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>npm\u306b\u52a0\u3048\u3066\u3001yarn\u3068\u547c\u3070\u308c\u308b\u5225\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30eb\u304c\u3042\u308a\u3001JavaScript\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3068\u7ba1\u7406\u306b\u3082\u4f7f\u7528\u3067\u304d\u3001npm\u3088\u308a\u3082\u9ad8\u901f\u3067\u5b89\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002 \u958b\u767a\u8005\u306f\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066npm\u307e\u305f\u306fyarn\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3092\u9078\u629e\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Node.js \u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3068\u5171\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u308b npm \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u305f\u3081\u306b\u3001\u8ffd\u52a0\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<p>yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306b\u306f\u3001\u6700\u521d\u306bNode.js\u3068npm\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u304b\u3089\u3001\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5165\u529b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>npm install -g yarn\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u7cf8\u3092\u53d6\u308a\u4ed8\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Node.js\u3068npm \/ yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u5f8c\u3001React Native\u3092\u4f7f\u7528\u3057\u3066\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u306e\u958b\u767a\u3092\u958b\u59cb\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native CLIChatGPT \u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u306f\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u304a\u3088\u3073\u7ba1\u7406\u3059\u308b\u305f\u3081\u306e\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30c4\u30fc\u30eb\u3067\u3059\u3002 React Native CLI \u3092\u4f7f\u7528\u3057\u3066\u3001\u65b0\u3057\u3044 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4f5c\u6210\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u5b9f\u884c\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d3\u30eb\u30c9\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u5b9f\u884c\u3092\u3059\u3070\u3084\u304f\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u8a73\u7d30\u306a\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30ce\u30fc\u30c9.js\u3068npm \/ yarn\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u524d\u306b\u3001\u30ce\u30fc\u30c9.js \u3068 npm \u307e\u305f\u306f yarn \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u5148\u307b\u3069\u304a\u7b54\u3048\u3057\u305f\u300cNode.js\u3068npm\/yarn\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044\u300d\u3068\u3044\u3046\u8cea\u554f\u3092\u53c2\u8003\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6CLI\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>Node.js \u3068 npm\/yarn \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u5f8c\u3001npm \u307e\u305f\u306f yarn \u3092\u4f7f\u7528\u3057\u3066 React Native CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5165\u529b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>npm\u3092\u4f7f\u7528\u3059\u308b:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npm install -g react-native-cli\n<\/code><\/pre>\n\n\n\n<p>\u7cf8\u306e\u4f7f\u7528:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">csharpCopy code<code>yarn global add react-native-cli\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u307e\u3059\u3002 \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304c\u5b8c\u4e86\u3057\u305f\u3089\u3001\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5165\u529b\u3057\u3066\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304c\u6210\u529f\u3057\u305f\u304b\u3069\u3046\u304b\u3092\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cssCopy code<code>react-native --version\n<\/code><\/pre>\n\n\n\n<p>React Native CLI \u304c\u6b63\u3057\u304f\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u308c\u3070\u3001React Native \u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u3092\u4f7f\u7528\u3057\u3066\u3001\u65b0\u3057\u3044 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">csharpCopy code<code>react-native init MyProject\n<\/code><\/pre>\n\n\n\n<p>MyProject \u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u540d\u524d\u3067\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native CLI \u306f\u3001\u5fc5\u8981\u306a\u4f9d\u5b58\u95a2\u4fc2\u3092\u81ea\u52d5\u7684\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3001\u65b0\u3057\u3044 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u305f\u3089\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>react-native start\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3057\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c&nbsp;<a href=\"http:\/\/localhost:8081\/%E5%9C%B0%E5%9D%80%E4%B8%8A%E3%80%82\">http:\/\/localhost:8081\/ \u30a2\u30c9\u30ec\u30b9\u3067\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002<\/a><\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u305f\u5f8c\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u30de\u30b7\u30f3\u3092\u4f7f\u7528\u3057\u3066 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>iOS \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-ios\n<\/code><\/pre>\n\n\n\n<p>Android \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-android\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u969b\u306e\u30c7\u30d0\u30a4\u30b9\u3067React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native CLI\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u65b0\u3057\u3044React Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u3059\u3070\u3084\u304f\u4f5c\u6210\u3057\u3001\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u7ba1\u7406\u304a\u3088\u3073\u30d3\u30eb\u30c9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8ChatGPT\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u8a73\u7d30\u306b\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u306f\u3001React Native\u3067\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u306e\u958b\u767a\u3092\u958b\u59cb\u3059\u308b\u305f\u3081\u306e\u6700\u521d\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 \u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u8a73\u7d30\u306a\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30ea\u30a2\u30af\u30c8\u30cd\u30a4\u30c6\u30a3\u30d6CLI\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u524d\u306b\u3001React \u30cd\u30a4\u30c6\u30a3\u30d6 CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306b\u306f\u3001\u4ee5\u524d\u306b\u56de\u7b54\u3057\u305f\u8cea\u554f\u300cReact Native CLI\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044\u300d\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">csharpCopy code<code>react-native init MyProject\n<\/code><\/pre>\n\n\n\n<p>MyProject \u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u540d\u524d\u3067\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native CLI \u306f\u3001\u5fc5\u8981\u306a\u4f9d\u5b58\u95a2\u4fc2\u3092\u81ea\u52d5\u7684\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3001\u65b0\u3057\u3044 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u305f\u3089\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>react-native start\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3057\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c&nbsp;<a href=\"http:\/\/localhost:8081\/%E5%9C%B0%E5%9D%80%E4%B8%8A%E3%80%82\">http:\/\/localhost:8081\/ \u30a2\u30c9\u30ec\u30b9\u3067\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002<\/a><\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u305f\u5f8c\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u30de\u30b7\u30f3\u3092\u4f7f\u7528\u3057\u3066 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>iOS \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-ios\n<\/code><\/pre>\n\n\n\n<p>Android \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-android\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u969b\u306e\u30c7\u30d0\u30a4\u30b9\u3067React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 \u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u305f\u3089\u3001\u30a8\u30c7\u30a3\u30bf\u30fc\u3092\u4f7f\u7528\u3057\u3066\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u958b\u304d\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 \u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3067\u304d\u307e\u3059\u3002 React Native \u306f JavaScript \u3092\u4f7f\u7528\u3057\u3066\u958b\u767a\u3055\u308c\u3066\u304a\u308a\u3001\u30b3\u30fc\u30c9\u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306e\u4e0b\u306e index.js \u30d5\u30a1\u30a4\u30eb\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306b\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30ec\u30a4\u30a2\u30a6\u30c8\u3001\u30ed\u30b8\u30c3\u30af\u306a\u3069\u306e\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u304a\u3088\u3073\u8ffd\u52a0\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a8\u30c7\u30a3\u30bf\u30fc\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 \u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3057\u305f\u5f8c\u3001\u30b3\u30fc\u30c9\u3092\u4fdd\u5b58\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u518d\u8aad\u307f\u8fbc\u307f\u3057\u3066\u52b9\u679c\u3092\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002 \u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u969b\u306e\u30c7\u30d0\u30a4\u30b9\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u3067\u304d\u307e\u3059\u3002 \u958b\u767a\u8005\u30c4\u30fc\u30eb\u306b\u306f\u3001\u8981\u7d20\u306e\u8868\u793a\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c7\u30d0\u30c3\u30b0\u3001\u30b3\u30f3\u30bd\u30fc\u30eb\u51fa\u529b\u306a\u3069\u3001\u591a\u304f\u306e\u30c7\u30d0\u30c3\u30b0 \u30c4\u30fc\u30eb\u3068\u6a5f\u80fd\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u306f\u3001React Native\u3067\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u306e\u958b\u767a\u3092\u958b\u59cb\u3059\u308b\u305f\u3081\u306e\u6700\u521d\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 React Native CLI \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u3067\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u958b\u767a\u3092\u3059\u3050\u306b\u958b\u59cb\u3057\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u304a\u3088\u3073\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fcChatGPT\u306e\u8d77\u52d5\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u6559\u3048\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u8d77\u52d5\u306f\u3001\u958b\u767a\u8005\u304c\u30ed\u30fc\u30ab\u30eb\u958b\u767a\u74b0\u5883\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30d0\u30c3\u30b0\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b React Native \u3067\u306e\u958b\u767a\u306b\u5fc5\u8981\u306a\u624b\u9806\u306e 1 \u3064\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3059\u308b\u8a73\u7d30\u306a\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30fc\u30df\u30ca\u30eb\u306bReact Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u5165\u529b\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>cd MyProject\n<\/code><\/pre>\n\n\n\n<p>\u3053\u3053\u3067\u3001MyProject \u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u540d\u524d\u3067\u3042\u308a\u3001\u5b9f\u969b\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d\u306b\u7f6e\u304d\u63db\u3048\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u8d77\u52d5<\/li>\n<\/ol>\n\n\n\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>react-native start\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3057\u3001\u30bf\u30fc\u30df\u30ca\u30eb\u306b\u6b21\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>Loading dependency graph, done.\nBundling `index.js`  [development, non-minified]  100.00% (1190\/1190), done.\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u6642\u70b9\u3067\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306f\u6b63\u5e38\u306b\u8d77\u52d5\u3055\u308c\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f&nbsp;<a href=\"http:\/\/localhost:8081\/%E5%9C%B0%E5%9D%80%E4%B8%8A%E3%80%82\">http:\/\/localhost:8081\/ \u30a2\u30c9\u30ec\u30b9\u3067\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002<\/a><\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3057\u305f\u5f8c\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u30de\u30b7\u30f3\u3092\u4f7f\u7528\u3057\u3066 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>iOS \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-ios\n<\/code><\/pre>\n\n\n\n<p>Android \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-android\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u5b9f\u969b\u306e\u30c7\u30d0\u30a4\u30b9\u3067React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u958b\u767a\u4e2d\u306b\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30a8\u30c7\u30a3\u30bf\u30fc\u3067\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3057\u3066\u4fdd\u5b58\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u518d\u8aad\u307f\u8fbc\u307f\u3067\u304d\u307e\u3059\u3002 React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u81ea\u52d5\u7684\u306b\u30ea\u30ed\u30fc\u30c9\u3055\u308c\u3001\u6700\u65b0\u306e\u30b3\u30fc\u30c9\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u8d77\u52d5\u306f\u3001React Native\u3092\u4f7f\u7528\u3057\u305f\u958b\u767a\u306b\u5fc5\u8981\u306a\u30b9\u30c6\u30c3\u30d7\u306e1\u3064\u3067\u3059\u3002 \u958b\u767a\u30b5\u30fc\u30d0\u30fc\u3092\u8d77\u52d5\u3059\u308b\u3068\u3001\u30ed\u30fc\u30ab\u30eb\u958b\u767a\u74b0\u5883\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u3001\u30c7\u30d0\u30c3\u30b0\u3068\u6700\u9069\u5316\u306b\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8ChatGPT\u3092\u5b9f\u884c\u3059\u308b\u8a73\u7d30\u3092\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306f\u3001\u958b\u767a\u8005\u304c\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u8868\u793a\u304a\u3088\u3073\u30c6\u30b9\u30c8\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b React Native \u3067\u306e\u958b\u767a\u306b\u5fc5\u8981\u306a\u624b\u9806\u306e 1 \u3064\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u884c\u3059\u308b\u8a73\u7d30\u306a\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>React Native \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30fc\u30df\u30ca\u30eb\u306bReact Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u5165\u529b\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>cd MyProject\n<\/code><\/pre>\n\n\n\n<p>\u3053\u3053\u3067\u3001MyProject \u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u540d\u524d\u3067\u3042\u308a\u3001\u5b9f\u969b\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d\u306b\u7f6e\u304d\u63db\u3048\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3092\u63a5\u7d9a\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u5834\u5408\u306f\u3001\u307e\u305a\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u3092\u8d77\u52d5\u3057\u3066\u958b\u767a\u74b0\u5883\u306b\u63a5\u7d9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u5177\u4f53\u7684\u306a\u624b\u9806\u306b\u3064\u3044\u3066\u306f\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u306e\u88fd\u9020\u5143\u304c\u63d0\u4f9b\u3059\u308b\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<p>\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u5834\u5408\u306f\u3001USB \u30b1\u30fc\u30d6\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30d0\u30a4\u30b9\u3092\u958b\u767a\u74b0\u5883\u306b\u63a5\u7d9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30c7\u30d0\u30a4\u30b9\u3067 USB \u30c7\u30d0\u30c3\u30b0\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3001\u304a\u3088\u3073\u958b\u767a\u74b0\u5883\u7528\u306e USB \u30c9\u30e9\u30a4\u30d0\u30fc\u304c\u69cb\u6210\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>iOS \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-ios\n<\/code><\/pre>\n\n\n\n<p>Android \u30a2\u30d7\u30ea\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>react-native run-android\n<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u305f\u5f8c\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u304a\u3088\u3073\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002 \u958b\u767a\u8005\u30c4\u30fc\u30eb\u306b\u306f\u3001\u8981\u7d20\u306e\u8868\u793a\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c7\u30d0\u30c3\u30b0\u3001\u30b3\u30f3\u30bd\u30fc\u30eb\u51fa\u529b\u306a\u3069\u3001\u591a\u304f\u306e\u30c7\u30d0\u30c3\u30b0 \u30c4\u30fc\u30eb\u3068\u6a5f\u80fd\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e UI \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306e\u691c\u67fb\u3001JavaScript \u30b3\u30fc\u30c9\u306e\u30c7\u30d0\u30c3\u30b0\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u8981\u6c42\u306e\u8868\u793a\u306a\u3069\u3092\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30ea\u30ed\u30fc\u30c9\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u958b\u767a\u4e2d\u306b\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30a8\u30c7\u30a3\u30bf\u30fc\u3067\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3057\u3066\u4fdd\u5b58\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u518d\u8aad\u307f\u8fbc\u307f\u3067\u304d\u307e\u3059\u3002 \u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067\u30c7\u30d0\u30a4\u30b9\u3092\u30b7\u30a7\u30a4\u30af\u3059\u308b\u304b\u3001Ctrl + M (Android \u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc) \u307e\u305f\u306f CMD + D (iOS \u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc) \u3092\u62bc\u3057\u3066\u958b\u767a\u8005\u30e1\u30cb\u30e5\u30fc\u3092\u958b\u304d\u3001[\u518d\u8aad\u307f\u8fbc\u307f] \u30e1\u30cb\u30e5\u30fc\u9805\u76ee\u3092\u9078\u629e\u3057\u307e\u3059\u3002 React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u81ea\u52d5\u7684\u306b\u30ea\u30ed\u30fc\u30c9\u3055\u308c\u3001\u6700\u65b0\u306e\u30b3\u30fc\u30c9\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067React Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306f\u3001React Native\u3092\u4f7f\u7528\u3057\u305f\u958b\u767a\u306b\u5fc5\u8981\u306a\u30b9\u30c6\u30c3\u30d7\u306e1\u3064\u3067\u3059\u3002 \u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u307e\u305f\u306f\u30c7\u30d0\u30a4\u30b9\u3067 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u8868\u793a\u304a\u3088\u3073\u30c6\u30b9\u30c8\u3057\u3001\u958b\u767a\u8005\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30c7\u30d0\u30c3\u30b0\u304a\u3088\u3073\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u3001ViewChatGPT\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30d3\u30e5\u30fc\u306fReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3042\u308a\u3001HTML\u306ediv\u30bf\u30b0\u307e\u305f\u306fspan\u30bf\u30b0\u306b\u4f3c\u3066\u304a\u308a\u3001\u4ed6\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u307e\u305f\u306f\u30ab\u30b9\u30bf\u30e0\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u7d44\u307f\u5408\u308f\u305b\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 \u30d3\u30e5\u30fc\u306b\u306f\u3001\u4ed6\u306e React Native \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u307e\u305f\u306f\u30ab\u30b9\u30bf\u30e0\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u3001\u57fa\u672c\u7684\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u3068\u30b9\u30bf\u30a4\u30eb\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React Native \u3067\u306f\u3001View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u4ed6\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u307e\u305f\u306f\u30ab\u30b9\u30bf\u30e0\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u542b\u3080\u3053\u3068\u304c\u3067\u304d\u308b\u77e9\u5f62\u9818\u57df\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View&gt;\n      \/\/ \u5305\u542b\u5176\u4ed6\u7ec4\u4ef6\u6216\u81ea\u5b9a\u4e49\u5185\u5bb9\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001backgroundColor\u3001\u5e45\u3001\u9ad8\u3055\u3001\u30d1\u30c7\u30a3\u30f3\u30b0\u3001\u4f59\u767d\u306a\u3069\u3001\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3044\u304f\u3064\u304b\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u80cc\u666f\u304c\u7070\u8272\u3001\u5883\u754c\u7dda\u304c\u8d64\u3001\u5e45\u304c 200\u3001\u9ad8\u3055\u304c 100\u3001\u4e0a\u4e0b\u5de6\u53f3\u306e\u30d1\u30c7\u30a3\u30f3\u30b0\u304c 10\u3001\u5de6\u4e0a\u30de\u30fc\u30b8\u30f3\u304c 20 \u306e View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import React from 'react';\nimport { View, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  container: {\n    backgroundColor: 'gray',\n    borderWidth: 1,\n    borderColor: 'red',\n    width: 200,\n    height: 100,\n    padding: 10,\n    margin: 20,\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={styles.container}&gt;\n      \/\/ \u5305\u542b\u5176\u4ed6\u7ec4\u4ef6\u6216\u81ea\u5b9a\u4e49\u5185\u5bb9\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ec\u30a4\u30a2\u30a6\u30c8 \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u65b9\u6cd5\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3 (flex\u3001justifyContent\u3001alignItems\u3001flexDirection \u306a\u3069) \u3082\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u5185\u306e\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u7279\u5b9a\u306e\u65b9\u6cd5\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u80cc\u666f\u304c\u7070\u8272\u3001\u5883\u754c\u7dda\u304c\u8d64\u3001\u5e45\u304c 200\u3001\u9ad8\u3055\u304c 100\u3001\u4e0a\u4e0b\u5de6\u53f3\u306e\u7a7a\u767d\u306e\u4f59\u767d\u304c 10\u3001\u5de6\u4e0a\u304b\u3089\u5de6\u4e0b\u306e\u4f59\u767d\u304c 20 \u306e View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u3001\u305d\u306e\u5185\u90e8\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6c34\u5e73\u65b9\u5411\u3068\u5782\u76f4\u65b9\u5411\u306b\u5747\u7b49\u306b\u5206\u6563\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import React from 'react';\nimport { View, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  container: {\n    backgroundColor: 'gray',\n    borderWidth: 1,\n    borderColor: 'red',\n    width: 200,\n    height: 100,\n    padding: 10,\n    margin: 20,\n    flexDirection: 'row',\n    justifyContent: 'space-between',\n    alignItems: 'center',\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={styles.container}&gt;\n      \/\/ \u5305\u542b\u5176\u4ed6\u7ec4\u4ef6\u6216\u81ea\u5b9a\u4e49\u5185\u5bb9\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30d3\u30e5\u30fc\u306fReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3042\u308a\u3001\u9577\u65b9\u5f62\u306e\u9818\u57df\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8TextChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308bReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3059\u3002 HTML \u306e p \u30bf\u30b0\u3084 span \u30bf\u30b0\u3068\u540c\u69d8\u306b\u3001\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u898b\u51fa\u3057\u3001\u6bb5\u843d\u3001\u30ea\u30b9\u30c8\u3001\u30dc\u30bf\u30f3\u3001\u30bf\u30b0\u306a\u3069\u3001\u4efb\u610f\u306e\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3057\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;Text&gt;\n      Hello, World!\n    &lt;\/Text&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001fontSize\u3001color\u3001fontWeight\u3001textAlign\u306a\u3069\u3001\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u8d64\u3001\u592a\u5b57\u3001\u4e2d\u592e\u63c3\u3048\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba 20 \u306e\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  text: {\n    color: 'red',\n    fontWeight: 'bold',\n    textAlign: 'center',\n    fontSize: 20,\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;Text style={styles.text}&gt;\n      Hello, World!\n    &lt;\/Text&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ea\u30c3\u30c1\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb<\/li>\n<\/ol>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30a4\u30f3\u30e9\u30a4\u30f3\u30b9\u30bf\u30a4\u30eb\u307e\u305f\u306f\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30a4\u30eb\u3092\u8a2d\u5b9a\u3067\u304d\u308b\u30ea\u30c3\u30c1\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u3082\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002 \u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u3001\u8d64\u3001\u592a\u5b57\u3001\u4e0b\u7dda\u3001\u8d64\u306e\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  text: {\n    color: 'red',\n    fontWeight: 'bold',\n    textDecorationLine: 'underline',\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;Text&gt;\n      &lt;Text&gt;Hello, &lt;\/Text&gt;\n      &lt;Text style={styles.text}&gt;World!&lt;\/Text&gt;\n    &lt;\/Text&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30c6\u30ad\u30b9\u30c8\u306e\u66f8\u5f0f\u3092\u8a2d\u5b9a\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001{&#8216;\\n&#8217;} \u3092\u4f7f\u7528\u3057\u3066\u884c\u3092\u6298\u308a\u8fd4\u3057\u3001{&#8216;\\t&#8217;} \u3092\u4f7f\u7528\u3057\u3066\u30bf\u30d6\u3092\u8ffd\u52a0\u3059\u308b\u30c6\u30ad\u30b9\u30c8\u306e\u66f8\u5f0f\u8a2d\u5b9a\u3082\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002 \u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30a4\u30f3\u30c7\u30f3\u30c8\u3055\u308c\u305f\u8907\u6570\u884c\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u6301\u3064 Text \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;Text&gt;\n      Line 1{'\\n'}\n      {'\\t'}Line 2{'\\n'}\n      {'\\t\\t'}Line 3{'\\n'}\n    &lt;\/Text&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30c6\u30ad\u30b9\u30c8\u306fReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3042\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u3068\u30ea\u30c3\u30c1\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u305f\u308a\u3001\u66f8\u5f0f\u8a2d\u5b9a\u3055\u308c\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u4f7f\u7528\u3057\u3066\u8907\u96d1\u306a\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u4f5c\u6210\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308bImageChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u753b\u50cf\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u753b\u50cf\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308bReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3059\u3002 \u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30ed\u30fc\u30ab\u30eb\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u753b\u50cf\u3001\u3055\u3089\u306b\u306f\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u753b\u50cf(GIF)\u3092\u8868\u793a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u3092\u8868\u793a\u3057\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Image } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;Image\n      source={{ uri: 'https:\/\/example.com\/images\/myimage.jpg' }}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u306f\u3001Image \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u3001source \u5c5e\u6027\u3092\u4f7f\u7528\u3057\u3066\u8868\u793a\u3059\u308b\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 \u3053\u306e\u4f8b\u3067\u306f\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30e1\u30fc\u30b8\u304c Image \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e source \u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>Image \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u5e45\u3001\u9ad8\u3055\u3001resizeMode \u306a\u3069\u3001\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3044\u304f\u3064\u304b\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u5e45 200\u3001\u9ad8\u3055 100 \u306e Image \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6bd4\u4f8b\u7684\u306b\u62e1\u5927\u7e2e\u5c0f\u3057\u3066\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Image, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  image: {\n    width: 200,\n    height: 100,\n    resizeMode: 'contain',\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;Image\n      source={{ uri: 'https:\/\/example.com\/images\/myimage.jpg' }}\n      style={styles.image}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ed\u30fc\u30ab\u30eb\u753b\u50cf<\/li>\n<\/ol>\n\n\n\n<p>\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30ed\u30fc\u30ab\u30eb\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u3092\u8868\u793a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 require \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ed\u30fc\u30ab\u30eb\u753b\u50cf\u3092\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bd\u30fc\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u53d6\u308a\u8fbc\u3080\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ed\u30fc\u30ab\u30eb\u753b\u50cf\u3092\u8868\u793a\u3059\u308b\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Image } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;Image\n      source={require('.\/images\/myimage.png')}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u753b\u50cf<\/li>\n<\/ol>\n\n\n\n<p>\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u753b\u50cf(GIF)\u3092\u8868\u793a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u4f5c\u6210\u3057\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bd\u30fc\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u753b\u50cf\u3092\u8868\u793a\u3059\u308b Image \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Image, Animated } from 'react-native';\n\nconst App = () =&gt; {\n  const animatedValue = new Animated.Value(0);\n\n  const rotate = animatedValue.interpolate({\n    inputRange: [0, 1],\n    outputRange: ['0deg', '360deg'],\n  });\n\n  return (\n    &lt;Image\n      source={{ uri: 'https:\/\/example.com\/images\/myanimation.gif' }}\n      style={{ transform: [{ rotate }] }}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u306f\u3001Animated.Value \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u3001\u88dc\u9593\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u56de\u8ee2\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 \u6b21\u306b\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u56de\u8ee2\u3057\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305f\u753b\u50cf\u3092\u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bd\u30fc\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u56de\u8ee2\u3055\u305b\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u753b\u50cf\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u753b\u50cf\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306eReact Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3059\u3002 [\u30a4\u30e1\u30fc\u30b8] \u30b0\u30eb\u30fc\u30d7\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3059\u308b\u306b\u306f\u3001\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u30ed\u30fc\u30ab\u30eb\u753b\u50cf\u3068\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 \u30a4\u30e1\u30fc\u30b8\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30d4\u30fc\u30b9\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30cb\u30fc\u30ba\u306b\u5408\u308f\u305b\u3066\u884c\u308f\u308c\u307e\u3059\u3002 \u753b\u50cf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001onLoad\u3001onError\u3001defaultSource \u306a\u3069\u306e\u8ffd\u52a0\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3082\u63d0\u4f9b\u3057\u3001\u753b\u50cf\u306e\u8aad\u307f\u8fbc\u307f\u4e2d\u306e\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308bTextInputChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>TextInput \u306f React Native \u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e 1 \u3064\u3067\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u5165\u529b\u3057\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u53d7\u3051\u53d6\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u30011 \u884c\u307e\u305f\u306f\u8907\u6570\u884c\u306e\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u3001\u30ad\u30fc\u30dc\u30fc\u30c9\u306e\u7a2e\u985e\u3001\u5165\u529b\u5236\u9650\u3001\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u306a\u3069\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u5165\u529b\u3057\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u53d7\u3051\u53d6\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { TextInput } from 'react-native';\n\nconst App = () =&gt; {\n  const [text, setText] = useState('');\n\n  return (\n    &lt;TextInput\n      value={text}\n      onChangeText={setText}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u306f\u3001TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u3001useState \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30c6\u30ad\u30b9\u30c8\u72b6\u614b\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 \u6b21\u306b\u3001\u30c6\u30ad\u30b9\u30c8\u72b6\u614b\u3092\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5024\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u3001setText \u95a2\u6570\u3092\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e onChangeText \u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3001\u8272\u3001\u30c6\u30ad\u30b9\u30c8\u6574\u5217\u3001\u80cc\u666f\u8272\u306a\u3069\u3001\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u80cc\u666f\u304c\u7070\u8272\u3001\u5883\u754c\u7dda\u304c\u8d64\u3001\u5e45\u304c 200\u3001\u9ad8\u3055\u304c 40\u3001\u4e0a\u3001\u4e0b\u3001\u5de6\u53f3\u306e\u30d1\u30c7\u30a3\u30f3\u30b0\u304c 10\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u304c 16 \u306e TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { TextInput, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  input: {\n    backgroundColor: 'gray',\n    borderWidth: 1,\n    borderColor: 'red',\n    width: 200,\n    height: 40,\n    padding: 10,\n    fontSize: 16,\n  },\n});\n\nconst App = () =&gt; {\n  const [text, setText] = useState('');\n\n  return (\n    &lt;TextInput\n      value={text}\n      onChangeText={setText}\n      style={styles.input}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ad\u30fc\u30dc\u30fc\u30c9\u306e\u7a2e\u985e<\/li>\n<\/ol>\n\n\n\n<p>TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30c7\u30d5\u30a9\u30eb\u30c8\u3001\u6570\u5024\u3001\u96fb\u5b50\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3001\u96fb\u8a71\u30d1\u30c3\u30c9\u306a\u3069\u3001\u30e6\u30fc\u30b6\u30fc\u5165\u529b\u306e\u7a2e\u985e\u3092\u5236\u9650\u3059\u308b\u30ad\u30fc\u30dc\u30fc\u30c9\u30bf\u30a4\u30d7\u3082\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ad\u30fc\u30dc\u30fc\u30c9\u306e\u7a2e\u985e\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u6570\u5024\u306e\u307f\u3092\u5165\u529b\u3067\u304d\u308b TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { TextInput } from 'react-native';\n\nconst App = () =&gt; {\n  const [text, setText] = useState('');\n\n  return (\n    &lt;TextInput\n      value={text}\n      onChangeText={setText}\n      keyboardType='numeric'\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u5236\u9650\u3092\u5165\u529b\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001maxLength\u3001\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u3001\u30bb\u30ad\u30e5\u30a2\u30c6\u30ad\u30b9\u30c8\u30a8\u30f3\u30c8\u30ea\u3001\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u3001\u30d1\u30b9\u30ef\u30fc\u30c9\u5165\u529b\u306a\u3069\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3067\u3001\u30e6\u30fc\u30b6\u30fc\u5165\u529b\u306e\u9577\u3055\u3092\u5236\u9650\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u5165\u529b\u306e\u6700\u5927\u9577\u3092 10 \u306b\u5236\u9650\u3057\u3001\u300c\u3053\u3053\u306b\u30c6\u30ad\u30b9\u30c8\u3092\u5165\u529b\u300d\u3068\u3044\u3046\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u3092\u8868\u793a\u3057\u3001\u5165\u529b\u3092\u8868\u793a\u3057\u306a\u3044 TextInput \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { TextInput } from 'react-native';\n\nconst App = () =&gt; {\n  const [text, setText] = useState('');\n\n  return (\n    &lt;TextInput\n      value={text}\n      onChangeText={setText}\n      maxLength={10}\n      placeholder='Enter text\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>here&#8217; secureTextEntry={true} \/&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>\n\u7efc\u4e0a\u6240\u8ff0\uff0cTextInput\u662fReact Native\u7684\u57fa\u7840\u7ec4\u4ef6\u4e4b\u4e00\uff0c\u7528\u4e8e\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u63a5\u6536\u7528\u6237\u8f93\u5165\u7684\u6587\u672c\u3002\u901a\u8fc7\u4f7f\u7528\u6837\u5f0f\u5c5e\u6027\u3001\u952e\u76d8\u7c7b\u578b\u3001\u8f93\u5165\u9650\u5236\u7b49\u5c5e\u6027\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49TextInput\u7ec4\u4ef6\u7684\u5916\u89c2\u548c\u5e03\u5c40\uff0c\u5e76\u9650\u5236\u7528\u6237\u8f93\u5165\u7684\u7c7b\u578b\u548c\u957f\u5ea6\uff0c\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u4ea4\u4e92\u4f53\u9a8c\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u3001ScrollViewChatGPT\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>ScrollView \u306f React \u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e 1 \u3064\u3067\u3001\u30d3\u30e5\u30fc\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3059\u308b\u6a5f\u80fd\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u4efb\u610f\u306e\u6570\u306e\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u8868\u793a\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u4efb\u610f\u306e\u6570\u306e\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u8868\u793a\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { ScrollView, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;ScrollView&gt;\n      &lt;Text&gt;Item 1&lt;\/Text&gt;\n      &lt;Text&gt;Item 2&lt;\/Text&gt;\n      &lt;Text&gt;Item 3&lt;\/Text&gt;\n      &lt;Text&gt;Item 4&lt;\/Text&gt;\n      &lt;Text&gt;Item 5&lt;\/Text&gt;\n      &lt;Text&gt;Item 6&lt;\/Text&gt;\n      &lt;Text&gt;Item 7&lt;\/Text&gt;\n      &lt;Text&gt;Item 8&lt;\/Text&gt;\n      &lt;Text&gt;Item 9&lt;\/Text&gt;\n      &lt;Text&gt;Item 10&lt;\/Text&gt;\n    &lt;\/ScrollView&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u306f\u3001ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u300110 \u500b\u306e\u30c6\u30ad\u30b9\u30c8 \u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u306f\u3001\u3053\u308c\u3089\u306e\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u305d\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3 (contentContainerStyle\u3001\u6c34\u5e73\u65b9\u5411\u3001\u30da\u30fc\u30b8\u30f3\u30b0\u6709\u52b9\u306a\u3069) \u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u6c34\u5e73\u30b9\u30af\u30ed\u30fc\u30eb\u3001\u30da\u30fc\u30b8\u5206\u5272\u3055\u308c\u305f\u8868\u793a\u3001\u5e45 200\u3001\u9ad8\u3055 150 \u306e ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { ScrollView, Text, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  scrollView: {\n    width: 200,\n    height: 150,\n  },\n  item: {\n    backgroundColor: 'gray',\n    margin: 10,\n    padding: 20,\n    fontSize: 20,\n    textAlign: 'center',\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;ScrollView\n      style={styles.scrollView}\n      horizontal={true}\n      pagingEnabled={true}\n    &gt;\n      &lt;Text style={styles.item}&gt;Item 1&lt;\/Text&gt;\n      &lt;Text style={styles.item}&gt;Item 2&lt;\/Text&gt;\n      &lt;Text style={styles.item}&gt;Item 3&lt;\/Text&gt;\n      &lt;Text style={styles.item}&gt;Item 4&lt;\/Text&gt;\n      &lt;Text style={styles.item}&gt;Item 5&lt;\/Text&gt;\n    &lt;\/ScrollView&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30cd\u30b9\u30c8\u3055\u308c\u305f\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc<\/li>\n<\/ol>\n\n\n\n<p>ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u4ed6\u306e ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u5185\u306b\u30cd\u30b9\u30c8\u3057\u3066\u3001\u3088\u308a\u8907\u96d1\u306a\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u5165\u308c\u5b50\u306b\u306a\u3063\u305f ScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import React from 'react';\nimport { ScrollView, Text, StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  scrollView: {\n    width: 200,\n    height: 150,\n  },\n  item: {\n    backgroundColor: 'gray',\n    margin: 10,\n    padding: 20,\n    fontSize: 20,\n    textAlign: 'center',\n  },\n});\n\nconst App = () =&gt; {\n  return (\n    &lt;ScrollView style={styles.scrollView}&gt;\n      &lt;ScrollView horizontal={true}&gt;\n        &lt;Text style\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>={styles.item}&gt;Item 1&lt;\/Text&gt; &lt;Text style={styles.item}&gt;Item 2&lt;\/Text&gt; &lt;Text style={styles.item}&gt;Item 3&lt;\/Text&gt; &lt;Text style={styles.item}&gt;Item 4&lt;\/Text&gt; &lt;Text style={styles.item}&gt;Item 5&lt;\/Text&gt; &lt;\/ScrollView&gt; &lt;Text style={styles.item}&gt;Item 6&lt;\/Text&gt; &lt;Text style={styles.item}&gt;Item 7&lt;\/Text&gt; &lt;Text style={styles.item}&gt;\u30a2\u30a4\u30c6\u30e08&lt;\/\u30c6\u30ad\u30b9\u30c8&gt; &lt;\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb={\u30b9\u30bf\u30a4\u30eb.\u30a2\u30a4\u30c6\u30e0}&gt;\u30a2\u30a4\u30c6\u30e09&lt;\/\u30c6\u30ad\u30b9\u30c8&gt; &lt;\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb={\u30b9\u30bf\u30a4\u30eb.\u30a2\u30a4\u30c6\u30e0}&gt;\u30a2\u30a4\u30c6\u30e010&lt;\/\u30c6\u30ad\u30b9\u30c8&gt; &lt;\/\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">markdownCopy code<code>\n\u4e0a\u8ff0\u4ee3\u7801\u521b\u5efa\u4e86\u4e00\u4e2aScrollView\u7ec4\u4ef6\uff0c\u5e76\u5728\u5176\u4e2d\u6dfb\u52a0\u4e86\u4e00\u4e2a\u6c34\u5e73\u6eda\u52a8\u7684ScrollView\u5b50\u7ec4\u4ef6\u548c5\u4e2a\u6587\u672c\u5b50\u7ec4\u4ef6\u3002\u7528\u6237\u53ef\u4ee5\u5728\u6c34\u5e73\u6eda\u52a8\u7684ScrollView\u5b50\u7ec4\u4ef6\u4e2d\u6eda\u52a8\uff0c\u5e76\u5728\u5782\u76f4\u65b9\u5411\u4e0a\u6eda\u52a8\u6574\u4e2aScrollView\u7ec4\u4ef6\u3002\n\n4. \u6027\u80fd\u4f18\u5316\n\nScrollView\u7ec4\u4ef6\u5728\u663e\u793a\u5927\u91cf\u5b50\u7ec4\u4ef6\u65f6\u53ef\u80fd\u4f1a\u5f71\u54cd\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\uff0c\u56e0\u4e3a\u5b83\u4f1a\u4e00\u6b21\u6027\u6e32\u67d3\u6240\u6709\u5b50\u7ec4\u4ef6\u3002\u4e3a\u4e86\u4f18\u5316\u6027\u80fd\uff0c\u53ef\u4ee5\u4f7f\u7528FlatList\u6216SectionList\u7ec4\u4ef6\u6765\u6e32\u67d3\u5927\u91cf\u6570\u636e\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0cScrollView\u662fReact Native\u7684\u57fa\u7840\u7ec4\u4ef6\u4e4b\u4e00\uff0c\u63d0\u4f9b\u4e86\u6eda\u52a8\u89c6\u56fe\u7684\u529f\u80fd\uff0c\u7528\u4e8e\u663e\u793a\u4efb\u610f\u6570\u91cf\u7684\u5b50\u7ec4\u4ef6\uff0c\u5e76\u5141\u8bb8\u7528\u6237\u5728\u5b50\u7ec4\u4ef6\u4e4b\u95f4\u6eda\u52a8\u3002\u901a\u8fc7\u4f7f\u7528\u6837\u5f0f\u5c5e\u6027\u548c\u5d4c\u5957ScrollView\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49ScrollView\u7ec4\u4ef6\u7684\u5916\u89c2\u548c\u5e03\u5c40\uff0c\u521b\u5efa\u66f4\u590d\u6742\u7684\u6eda\u52a8\u89c6\u56fe\u3002\u4f46\u5728\u663e\u793a\u5927\u91cf\u5b50\u7ec4\u4ef6\u65f6\uff0c\u5e94\u8be5\u8003\u8651\u6027\u80fd\u4f18\u5316\uff0c\u4f7f\u7528FlatList\u6216SectionList\u7ec4\u4ef6\u6765\u6e32\u67d3\u5927\u91cf\u6570\u636e\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8FlatListChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>FlatList\u306f\u3001React Native\u306e\u57fa\u672c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3042\u308a\u3001\u30c1\u30e3\u30c3\u30c8\u5c65\u6b74\u3084\u30cb\u30e5\u30fc\u30b9\u30ea\u30b9\u30c8\u306a\u3069\u306e\u9577\u3044\u30ea\u30b9\u30c8\u30c7\u30fc\u30bf\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u5fc5\u8981\u306a\u30ea\u30b9\u30c8\u9805\u76ee\u3092\u81ea\u52d5\u7684\u306b\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u3053\u3068\u3067\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/li>\n<\/ol>\n\n\n\n<p>React Native \u3067\u306f\u3001FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u9577\u3044\u30ea\u30b9\u30c8\u30c7\u30fc\u30bf\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u76ee\u7684\u306e\u30ea\u30b9\u30c8\u9805\u76ee\u3092\u81ea\u52d5\u7684\u306b\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u5358\u7d14\u306a FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { FlatList, Text } from 'react-native';\n\nconst App = () =&gt; {\n  const data = [\n    { key: '1', title: 'Item 1' },\n    { key: '2', title: 'Item 2' },\n    { key: '3', title: 'Item 3' },\n    { key: '4', title: 'Item 4' },\n    { key: '5', title: 'Item 5' },\n  ];\n\n  return (\n    &lt;FlatList\n      data={data}\n      renderItem={({ item }) =&gt; &lt;Text&gt;{item.title}&lt;\/Text&gt;}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u306f\u3001FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u3001data \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30ea\u30b9\u30c8 \u30c7\u30fc\u30bf\u3092\u6e21\u3057\u307e\u3059\u3002 renderItem \u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u306f\u3001\u77e2\u5370\u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u5404\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 \u3053\u306e\u5834\u5408\u3001\u5404\u30ea\u30b9\u30c8\u9805\u76ee\u306f\u3001title \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u8868\u793a\u3059\u308b\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001\u30ea\u30b9\u30c8\u9805\u76ee\u3054\u3068\u306b\u4e00\u610f\u306e\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u6307\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 key \u5c5e\u6027\u306f\u3001React \u304c\u5909\u66f4\u3055\u308c\u305f\u30ea\u30b9\u30c8\u9805\u76ee\u3092\u8b58\u5225\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u4e00\u610f\u306e\u30ad\u30fc\u5c5e\u6027\u3092\u6301\u3064 FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { FlatList, Text } from 'react-native';\n\nconst App = () =&gt; {\n  const data = [\n    { key: '1', title: 'Item 1' },\n    { key: '2', title: 'Item 2' },\n    { key: '3', title: 'Item 3' },\n    { key: '4', title: 'Item 4' },\n    { key: '5', title: 'Item 5' },\n  ];\n\n  return (\n    &lt;FlatList\n      data={data}\n      renderItem={({ item }) =&gt; &lt;Text&gt;{item.title}&lt;\/Text&gt;}\n      keyExtractor={item =&gt; item.key}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001keyExtractor \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u4e00\u610f\u306e\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u3092\u8b58\u5225\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b\u5404\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306e\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u62bd\u51fa\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u305d\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3 (\u30b3\u30f3\u30c6\u30f3\u30c4 \u30b3\u30f3\u30c6\u30ca\u30fc \u30b9\u30bf\u30a4\u30eb\u3001\u6c34\u5e73\u3001\u30a2\u30a4\u30c6\u30e0\u533a\u5207\u308a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306a\u3069) \u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u3001\u6c34\u5e73\u65b9\u5411\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3059\u308b FlatList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3057\u3001\u30ea\u30b9\u30c8\u9805\u76ee\u9593\u306b\u533a\u5207\u308a\u8a18\u53f7\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import React from 'react';\nimport { FlatList, Text, StyleSheet, View } from 'react-native';\n\nconst styles = StyleSheet.create({\n  item: {\n    backgroundColor: 'gray',\n    margin: 10,\n    padding: 20,\n   \n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba: 20, \u30c6\u30ad\u30b9\u30c8\u6574\u5217: &#8216;\u4e2d\u592e&#8217;, }, \u533a\u5207\u308a\u6587\u5b57: { \u9ad8\u3055: 1, \u80cc\u666f\u8272: &#8216;\u9ed2&#8217;, }, });<\/p>\n\n\n\n<p>const \u30a2\u30d7\u30ea = () =&gt; { const data = [ { \u30ad\u30fc: &#8216;1&#8217;, \u30bf\u30a4\u30c8\u30eb: &#8216;\u30a2\u30a4\u30c6\u30e0 1&#8217; }, { \u30ad\u30fc: &#8216;2&#8217;, \u30bf\u30a4\u30c8\u30eb: &#8216;\u30a2\u30a4\u30c6\u30e0 2&#8217; }, { \u30ad\u30fc: &#8216;3&#8217;, \u30bf\u30a4\u30c8\u30eb: &#8216;\u30a2\u30a4\u30c6\u30e0 3&#8217; }, { \u30ad\u30fc: &#8216;4&#8217;, \u30bf\u30a4\u30c8\u30eb: &#8216;\u30a2\u30a4\u30c6\u30e0 4&#8217; }, { \u30ad\u30fc: &#8216;5&#8217;, \u30bf\u30a4\u30c8\u30eb: &#8216;\u30a2\u30a4\u30c6\u30e0 5&#8217; }, ];<\/p>\n\n\n\n<p>return ( &lt;FlatList data={data} horizontal={true} ItemSeparatorComponent={() =&gt; &lt;View style={styles.separator} \/&gt;} renderItem={({ item }) =&gt; &lt;Text style={styles.item}&gt;{item.title}&lt;\/Text&gt;} keyExtractor={item =&gt; item.key} \/&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">markdownCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528horizontal\u5c5e\u6027\u5c06FlatList\u7ec4\u4ef6\u8bbe\u7f6e\u4e3a\u6c34\u5e73\u6eda\u52a8\u3002\u4f7f\u7528ItemSeparatorComponent\u5c5e\u6027\u6dfb\u52a0\u5206\u9694\u7b26\uff0c\u5e76\u4f7f\u7528renderItem\u5c5e\u6027\u6e32\u67d3\u6bcf\u4e2a\u5217\u8868\u9879\u3002\u5206\u9694\u7b26\u662f\u4e00\u4e2aView\u7ec4\u4ef6\uff0c\u4f7f\u7528separator\u6837\u5f0f\u5c5e\u6027\u8bbe\u7f6e\u5176\u9ad8\u5ea6\u548c\u80cc\u666f\u989c\u8272\u3002\n\n4. \u6027\u80fd\u4f18\u5316\n\n\u5728\u6e32\u67d3\u5927\u91cf\u6570\u636e\u65f6\uff0cFlatList\u7ec4\u4ef6\u53ef\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\uff0c\u56e0\u4e3a\u5b83\u53ea\u6e32\u67d3\u5f53\u524d\u53ef\u89c1\u7684\u5217\u8868\u9879\u3002\u4e3a\u4e86\u8fdb\u4e00\u6b65\u4f18\u5316\u6027\u80fd\uff0c\u53ef\u4ee5\u4f7f\u7528shouldComponentUpdate\u6216React.memo\u7b49\u6280\u672f\uff0c\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u91cd\u65b0\u6e32\u67d3\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0cFlatList\u662fReact Native\u7684\u57fa\u7840\u7ec4\u4ef6\u4e4b\u4e00\uff0c\u7528\u4e8e\u6e32\u67d3\u957f\u5217\u8868\u6570\u636e\uff0c\u5e76\u6839\u636e\u9700\u8981\u81ea\u52a8\u6e32\u67d3\u6240\u9700\u7684\u5217\u8868\u9879\u3002\u901a\u8fc7\u4f7f\u7528key\u5c5e\u6027\u3001\u6837\u5f0f\u5c5e\u6027\u548c\u5206\u9694\u7b26\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49FlatList\u7ec4\u4ef6\u7684\u5916\u89c2\u548c\u5e03\u5c40\u3002\u5728\u6e32\u67d3\u5927\u91cf\u6570\u636e\u65f6\uff0c\u5e94\u8be5\u8003\u8651\u6027\u80fd\u4f18\u5316\uff0c\u4f7f\u7528shouldComponentUpdate\u6216React.memo\u7b49\u6280\u672f\uff0c\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u91cd\u65b0\u6e32\u67d3\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native Style\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native\u3067\u306f\u3001\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u4f4d\u7f6e\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u306f\u3001React Native\u306e\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3042\u308a\u3001JavaScript\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u3067\u304d\u308b\u305f\u3081\u3001\u30b9\u30bf\u30a4\u30eb\u306e\u7ba1\u7406\u3068\u518d\u5229\u7528\u304c\u5bb9\u6613\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u8272\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3001\u80cc\u666f\u8272\u306a\u3069\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u3053\u308c\u3089\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u304a\u3088\u3073\u7ba1\u7406\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u5358\u7d14\u306a\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8 \u30b9\u30bf\u30a4\u30eb \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import { StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    backgroundColor: '#fff',\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n  text: {\n    fontSize: 20,\n    fontWeight: 'bold',\n    color: 'blue',\n  },\n});\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b9\u30bf\u30a4\u30eb\u3068\u547c\u3070\u308c\u308b\u30b9\u30bf\u30a4\u30eb\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c StyleSheet.create \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 style \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u306f\u3001\u30b3\u30f3\u30c6\u30ca\u30fc\u3068\u30c6\u30ad\u30b9\u30c8\u306e 2 \u3064\u306e\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ec\u30a4\u30a2\u30a6\u30c8 \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>React Native\u3067\u306f\u3001\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u5e45\u3001\u9ad8\u3055\u3001\u4f59\u767d\u306a\u3069\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u3053\u308c\u3089\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u304a\u3088\u3073\u7ba1\u7406\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u3001\u5e45 200\u3001\u9ad8\u3055 150\u3001\u6c34\u5e73\u65b9\u5411\u3068\u5782\u76f4\u65b9\u5411\u306e\u4e2d\u5fc3\u3092\u6301\u3064\u30b9\u30bf\u30a4\u30eb \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>import { StyleSheet } from 'react-native';\n\nconst styles = StyleSheet.create({\n  container: {\n    width: 200,\n    height: 150,\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n});\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b3\u30f3\u30c6\u30ca\u3068\u3044\u3046\u540d\u524d\u306e\u30b9\u30bf\u30a4\u30eb\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304cStyleSheet.create\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u306f\u3001\u5e45\u3001\u9ad8\u3055\u3001\u30a2\u30a4\u30c6\u30e0\u306e\u6574\u5217\u3001\u304a\u3088\u3073\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u4e21\u7aef\u63c3\u3048\u306e 4 \u3064\u306e\u30ec\u30a4\u30a2\u30a6\u30c8 \u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<p>React Native\u3067\u306f\u3001\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306estyle\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u6e21\u3059\u3053\u3068\u3067\u9069\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u4e0a\u8a18\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3067 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\nimport { styles } from '.\/styles';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={styles.container}&gt;\n      &lt;Text style={styles.text}&gt;Hello World!&lt;\/Text&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001styles.container \u304a\u3088\u3073 styles.text \u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002 \u30d3\u30e5\u30fc \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3001alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 JustifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u6c34\u5e73\u65b9\u5411\u3068\u5782\u76f4\u65b9\u5411\u306e\u4e2d\u592e\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002 \u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3001fontSize\u3001fontWeight\u3001\u304a\u3088\u3073\u30ab\u30e9\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3001\u592a\u5b57\u3001\u304a\u3088\u3073\u8272\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u304a\u3088\u3073\u7ba1\u7406\u3059\u308bReact Native\u306e\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e1\u3064\u3067\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u4f4d\u7f6e\u3092\u7c21\u5358\u306b\u5236\u5fa1\u3067\u304d\u3001\u30b9\u30bf\u30a4\u30eb\u3092\u518d\u5229\u7528\u3057\u3066\u30b3\u30fc\u30c9\u306e\u8aad\u307f\u3084\u3059\u3055\u3068\u4fdd\u5b88\u6027\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306b\u53cd\u5fdc\u3059\u308b\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8, ChatGPT<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u306f\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30e2\u30c7\u30eb\u306b\u57fa\u3065\u304f\u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u3042\u308a\u3001\u89aa\u30b3\u30f3\u30c6\u30ca\u3067\u30d5\u30ec\u30c3\u30af\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u3057\u3001\u5b50\u30b3\u30f3\u30c6\u30ca\u3067\u30d5\u30ec\u30c3\u30af\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u3059\u308b\u3053\u3068\u3067\u67d4\u8edf\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u53ef\u80fd\u306b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30d5\u30ec\u30c3\u30af\u30b9\u30b3\u30f3\u30c6\u30ca<\/li>\n<\/ol>\n\n\n\n<p>Flexbox \u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u306f\u3001\u89aa\u30b3\u30f3\u30c6\u30ca\u306f\u30d5\u30ec\u30c3\u30af\u30b9\u30b3\u30f3\u30c6\u30ca\u3068\u547c\u3070\u308c\u30011 \u3064\u4ee5\u4e0a\u306e\u5b50\u30b3\u30f3\u30c6\u30ca\u304c\u542b\u307e\u308c\u307e\u3059\u3002 flex \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001flex \u30b3\u30f3\u30c6\u30ca\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001flex \u30b3\u30f3\u30c6\u30ca\u3092\u6301\u3064 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={{ flex: 1 }}&gt;\n      &lt;Text&gt;Hello World!&lt;\/Text&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f flex \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066 flex \u30b3\u30f3\u30c6\u30ca\u3068\u3057\u3066\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u306e flex \u5c5e\u6027\u306e\u5024\u306b\u306f\u3001flex \u30b3\u30f3\u30c6\u30ca\u306e\u4f38\u7e2e\u7387\u3092\u6307\u5b9a\u3059\u308b\u6570\u5024\u307e\u305f\u306f\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 \u3053\u306e\u4f8b\u3067\u306f\u3001View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001flex \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u3068\u3057\u3066 1 \u3067\u753b\u9762\u5168\u4f53\u3092\u57cb\u3081\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>flex\u5b50\u5bb9\u5668<\/li>\n<\/ol>\n\n\n\n<p>Flexbox \u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u306f\u3001\u5b50\u30b3\u30f3\u30c6\u30ca\u306f flex \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u3068\u547c\u3070\u308c\u3001flex \u30b3\u30f3\u30c6\u30ca\u5185\u306b\u542b\u307e\u308c\u3001flex \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u30012 \u3064\u306e flex \u5b50\u30b3\u30f3\u30c6\u30ca\u3092\u6301\u3064 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={{ flex: 1 }}&gt;\n      &lt;View style={{ flex: 1, backgroundColor: 'red' }}&gt;\n        &lt;Text&gt;Flexbox Example 1&lt;\/Text&gt;\n      &lt;\/View&gt;\n      &lt;View style={{ flex: 2, backgroundColor: 'blue' }}&gt;\n        &lt;Text&gt;Flexbox Example 2&lt;\/Text&gt;\n      &lt;\/View&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001flex \u30b3\u30f3\u30c6\u30ca\u304c\u4f5c\u6210\u3055\u308c\u3001\u305d\u306e\u4e2d\u306b 1 \u3064\u306e flex \u5b50\u30b3\u30f3\u30c6\u30ca\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6700\u521d\u306e\u5b50\u30b3\u30f3\u30c6\u30ca\u3067\u3001flex \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u305d\u306e\u9ad8\u3055\u3092 flex \u30b3\u30f3\u30c6\u30ca\u306e 3\/2 \u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 3 \u756a\u76ee\u306e\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u3067\u3001flex \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u305d\u306e\u9ad8\u3055\u3092 flex \u30b3\u30f3\u30c6\u30ca\u306e &lt;&gt;\/&lt;&gt; \u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30d5\u30ec\u30c3\u30af\u30b9\u65b9\u5411<\/li>\n<\/ol>\n\n\n\n<p>\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30b3\u30f3\u30c6\u30ca\u3068\u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u3092\u6c34\u5e73\u307e\u305f\u306f\u5782\u76f4\u306b\u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u304d\u307e\u3059\u3002 flexDirection \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001flex \u30b3\u30f3\u30c6\u30ca\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u65b9\u5411\u3092\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u65b9\u5411\u3092\u6301\u3064 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={{ flex: 1, flexDirection: 'row' }}&gt;\n      &lt;View style={{ flex: 1, backgroundColor: 'red' }}&gt;\n        &lt;Text&gt;Flexbox Example 1&lt;\/Text&gt;\n      &lt;\/View&gt;\n      &lt;View style={{ flex: 2, backgroundColor: 'blue' }}&gt;\n        &lt;Text&gt;Flexbox Example 2&lt;\/Text&gt;\n      &lt;\/View&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001flexDirection \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u65b9\u5411\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u6c34\u5e73\u65b9\u5411\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u3057\u305f\u304c\u3063\u3066\u3001\u6700\u521d\u306e\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u30fc\u306f\u5de6\u5074\u306b\u3042\u308a\u30012 \u756a\u76ee\u306e\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u30fc\u306f\u53f3\u5074\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30d5\u30ec\u30c3\u30af\u30b9\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u3067\u306f\u3001alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 justifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30b3\u30f3\u30c6\u30ca\u3068\u30d5\u30ec\u30c3\u30af\u30b9\u5b50\u30b3\u30f3\u30c6\u30ca\u3092\u6574\u5217\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u4ea4\u5dee\u8ef8\u4e0a\u306e\u30d5\u30ec\u30c3\u30af\u30b9 \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u30fc\u306e\u914d\u7f6e\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u3001justifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u30b9\u30d4\u30f3\u30c9\u30eb\u4e0a\u306e\u30d5\u30ec\u30c3\u30af\u30b9 \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u30fc\u306e\u914d\u7f6e\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8\u3092\u6301\u3064 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">lessCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={{\n      flex: 1,\n      flexDirection: 'column',\n      alignItems: 'center',\n      justifyContent: 'center',\n    }}&gt;\n      &lt;View style={{ width: 50, height: 50, backgroundColor: 'red' }} \/&gt;\n      &lt;View style={{ width: 50, height: 50, backgroundColor: 'blue' }} \/&gt;\n      &lt;View style={{ width: 50, height: 50, backgroundColor: 'green' }} \/&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 justifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b50\u30b3\u30f3\u30c6\u30ca\u3092\u753b\u9762\u306e\u4e2d\u592e\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002 \u305d\u306e\u4e2d\u3067\u3001alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u4ea4\u5dee\u8ef8\u306e\u4e2d\u592e\u63c3\u3048\u306b\u8a2d\u5b9a\u3055\u308c\u3001justifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u4e3b\u8ef8\u306e\u4e2d\u592e\u63c3\u3048\u306b\u8a2d\u5b9a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u306fReact Native\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u65b9\u6cd5\u306e1\u3064\u3067\u3042\u308a\u3001flex\u30d7\u30ed\u30d1\u30c6\u30a3\u3001flexDirection\u30d7\u30ed\u30d1\u30c6\u30a3\u3001alignItems\u30d7\u30ed\u30d1\u30c6\u30a3\u3001\u304a\u3088\u3073justifyContent\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u7c21\u5358\u306b\u5236\u5fa1\u3057\u3001\u67d4\u8edf\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u5b9f\u73fe\u3067\u304d\u307e\u3059\u3002 React Native\u3067\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30dc\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u306f\u975e\u5e38\u306b\u4e00\u822c\u7684\u3067\u3042\u308a\u3001\u6c34\u5e73\u304a\u3088\u3073\u5782\u76f4\u306e\u30ea\u30b9\u30c8\u3001\u30c6\u30fc\u30d6\u30eb\u3001\u30e1\u30cb\u30e5\u30fc\u306a\u3069\u3001\u3055\u307e\u3056\u307e\u306a\u30b7\u30ca\u30ea\u30aa\u3067\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3001\u4e00\u822c\u7684\u306a\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027ChatGPT\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native\u306b\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308b\u3001\u4e00\u822c\u7684\u306b\u4f7f\u7528\u3055\u308c\u308b\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u3059\u3002 React \u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u4e00\u822c\u7684\u306a\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30d5\u30ec\u30c3\u30af\u30b9\u30c7\u30a3\u30ec\u30af\u30b7\u30e7\u30f3<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u884c | \u30b3\u30e9\u30e0<\/li>\n\n\n\n<li>\u8aac\u660e: \u30d5\u30ec\u30c3\u30af\u30b9\u5bb9\u5668\u306e\u30b9\u30d4\u30f3\u30c9\u30eb\u65b9\u5411\u3092\u6307\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u65e2\u5b9a\u5024\u306f\u3001\u5782\u76f4\u65b9\u5411\u3092\u8868\u3059\u5217\u3068\u6c34\u5e73\u65b9\u5411\u3092\u8868\u3059\u884c\u3067\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u6b63\u5f53\u5316<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5c5e\u6027\u503c:\u30d5\u30ec\u30c3\u30af\u30b9\u30b9\u30bf\u30fc\u30c8 |\u30bb\u30f3\u30bf\u30fc |\u30d5\u30ec\u30c3\u30af\u30b9\u30a8\u30f3\u30c9 |\u30b9\u30da\u30fc\u30b9\u9593 |\u30b9\u30da\u30fc\u30b9\u30a2\u30e9\u30a6\u30f3\u30c9<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b9\u30d4\u30f3\u30c9\u30eb\u4e0a\u306e\u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u914d\u7f6e\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 \u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u306f\u30d5\u30ec\u30c3\u30af\u30b9\u30b9\u30bf\u30fc\u30c8\u3067\u3001\u30b9\u30d4\u30f3\u30c9\u30eb\u306e\u59cb\u70b9\u4f4d\u7f6e\u5408\u308f\u305b\u3092\u610f\u5473\u3057\u307e\u3059\u3002 \u30bb\u30f3\u30bf\u30fc\u306f\u30bb\u30f3\u30bf\u30fc\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8\u3092\u610f\u5473\u3057\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30a8\u30f3\u30c9\u306f\u30b9\u30d4\u30f3\u30c9\u30eb\u306e\u7aef\u3067\u306e\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8\u3092\u610f\u5473\u3057\u307e\u3059\u3002 \u30b9\u30da\u30fc\u30b9\u9593\u3068\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u9593\u306e\u30b9\u30da\u30fc\u30b9\u3092\u5747\u7b49\u306b\u5206\u6563\u3059\u308b\u3053\u3068\u3092\u610f\u5473\u3057\u3001\u30b9\u30da\u30fc\u30b9\u30a2\u30e9\u30a6\u30f3\u30c9\u3068\u306f\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u5468\u56f2\u306e\u30b9\u30da\u30fc\u30b9\u3092\u5747\u7b49\u306b\u5206\u6563\u3059\u308b\u3053\u3068\u3092\u610f\u5473\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30a2\u30a4\u30c6\u30e0\u3092\u6574\u5217\u3055\u305b\u308b<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5c5e\u6027\u503c:\u30d5\u30ec\u30c3\u30af\u30b9\u30b9\u30bf\u30fc\u30c8 |\u30bb\u30f3\u30bf\u30fc |\u30d5\u30ec\u30c3\u30af\u30b9\u30a8\u30f3\u30c9 |\u4f38\u3070\u3059<\/li>\n\n\n\n<li>\u8aac\u660e: \u4ea4\u5dee\u8ef8\u4e0a\u306e\u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u914d\u7f6e\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u306f stretch \u3067\u3001\u4ea4\u5dee\u8ef8\u306e\u9ad8\u3055\u306b\u5408\u308f\u305b\u3066 flex \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u3092\u30b9\u30c8\u30ec\u30c3\u30c1\u3059\u308b\u3053\u3068\u3092\u610f\u5473\u3057\u307e\u3059\u3002 \u30d5\u30ec\u30c3\u30af\u30b9\u30b9\u30bf\u30fc\u30c8\u306f\u30af\u30ed\u30b9\u8ef8\u306e\u59cb\u70b9\u3067\u306e\u6574\u5217\u3092\u610f\u5473\u3057\u3001\u4e2d\u5fc3\u306f\u30af\u30ed\u30b9\u8ef8\u306e\u4e2d\u5fc3\u3067\u306e\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8\u3092\u610f\u5473\u3057\u3001\u30d5\u30ec\u30c3\u30af\u30b9\u30a8\u30f3\u30c9\u306f\u30af\u30ed\u30b9\u8ef8\u306e\u7d42\u70b9\u3067\u306e\u30a2\u30e9\u30a4\u30e1\u30f3\u30c8\u3092\u610f\u5473\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u6574\u5217\u81ea\u5df1<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5c5e\u6027\u503c:auto |\u30d5\u30ec\u30c3\u30af\u30b9\u30b9\u30bf\u30fc\u30c8 |\u30bb\u30f3\u30bf\u30fc |\u30d5\u30ec\u30c3\u30af\u30b9\u30a8\u30f3\u30c9 |\u4f38\u3070\u3059<\/li>\n\n\n\n<li>\u8aac\u660e: alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3057\u3066\u3001\u4ea4\u5dee\u8ef8\u4e0a\u306e\u30d5\u30ec\u30c3\u30af\u30b9\u5b50\u30b3\u30f3\u30c6\u30ca\u306e\u914d\u7f6e\u3092\u500b\u5225\u306b\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30d5\u30ec\u30c3\u30af\u30b9<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u6570\u5024<\/li>\n\n\n\n<li>\u8aac\u660e: \u30d5\u30ec\u30c3\u30af\u30b9\u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u4f38\u7e2e\u7387\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u65e2\u5b9a\u5024\u306f 0 \u3067\u3001\u4f38\u7e2e\u304c\u306a\u3044\u3053\u3068\u3092\u610f\u5473\u3057\u307e\u3059\u3002 flex \u5c5e\u6027\u3092\u4f7f\u7528\u3057\u3066\u3001\u3059\u3079\u3066\u306e flex \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e flex \u5c5e\u6027\u306e\u5408\u8a08\u304c flex \u30b3\u30f3\u30c6\u30ca\u306e\u7a7a\u304d\u9818\u57df\u3068\u7b49\u3057\u304f\u306a\u3044\u5834\u5408\u306b\u3001flex \u30b5\u30d6\u30b3\u30f3\u30c6\u30ca\u306e\u76f8\u5bfe\u30b5\u30a4\u30ba\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>\u5e45<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u6570\u5024 | \u7cf8<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5e45\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u30d4\u30af\u30bb\u30eb\u306b\u6570\u5024\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3082\u3001\u89aa\u30b3\u30f3\u30c6\u30ca\u30fc\u306b\u5bfe\u3059\u308b\u76f8\u5bfe\u7684\u306a\u5e45\u3092\u8868\u3059\u305f\u3081\u306b\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"7\">\n<li>\u9ad8\u3055<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u6570\u5024 | \u7cf8<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u9ad8\u3055\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u30d4\u30af\u30bb\u30eb\u306b\u6570\u5024\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3082\u3001\u89aa\u30b3\u30f3\u30c6\u30ca\u30fc\u306b\u5bfe\u3059\u308b\u76f8\u5bfe\u7684\u306a\u9ad8\u3055\u3092\u8868\u3059\u305f\u3081\u306b\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"8\">\n<li>\u4f59\u5730<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u6570\u5024 | \u7cf8<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f59\u767d\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u30d4\u30af\u30bb\u30eb\u306b\u306f\u6570\u5024\u3092\u4f7f\u7528\u3057\u3001\u89aa\u30b3\u30f3\u30c6\u30ca\u3092\u57fa\u6e96\u3068\u3057\u305f\u5e45\u307e\u305f\u306f\u9ad8\u3055\u306b\u306f\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"9\">\n<li>\u5fc3\u5730<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u6570\u5024 | \u7cf8<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d1\u30c7\u30a3\u30f3\u30b0\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u6570\u5024\u3092\u4f7f\u7528\u3057\u3066\u30d4\u30af\u30bb\u30eb\u3092\u8868\u3059\u3053\u3068\u3082\u3001\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u5bfe\u3059\u308b\u5e45\u307e\u305f\u306f\u9ad8\u3055\u3092\u8868\u3059\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"10\">\n<li>\u80cc\u666f\u30ab\u30e9\u30fc<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u5024: \u8272<\/li>\n\n\n\n<li>\u8aac\u660e: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u80cc\u666f\u8272\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002 \u8272\u540d\u307e\u305f\u306f 16 \u9032\u5024\u3092\u4f7f\u7528\u3057\u3066\u9854\u3092\u8868\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc \u30cd\u30a4\u30c6\u30a3\u30d6\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3 \u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\u3092\u5b9f\u73fe\u3067\u304d\u307e\u3059\u3002 TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u4ed8\u304d\u306e\u30e9\u30c3\u30d7\u3055\u308c\u305f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u62bc\u3057\u305f\u308a\u96e2\u3057\u305f\u308a\u3059\u308b\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u304c\u5909\u308f\u308a\u307e\u3059\u3002 TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4ed6\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u4e00\u7dd2\u306b\u4f7f\u7528\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u64cd\u4f5c\u3057\u305f\u3068\u304d\u306b\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableOpacity, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableOpacity onPress={() =&gt; console.log('Button pressed')}&gt;\n      &lt;Text&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableOpacity&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30dc\u30bf\u30f3\u306f TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30aa\u30f3\u30d7\u30ec\u30b9\u30a4\u30d9\u30f3\u30c8<\/li>\n<\/ol>\n\n\n\n<p>TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e3b\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\u306f onPress \u30a4\u30d9\u30f3\u30c8\u3067\u3001\u3053\u308c\u306f\u30e6\u30fc\u30b6\u30fc\u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u8d77\u52d5\u3059\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3067\u3059\u3002 onPress \u30a4\u30d9\u30f3\u30c8\u3067\u306f\u3001\u30e2\u30fc\u30c0\u30eb\u30dc\u30c3\u30af\u30b9\u3092\u958b\u304f\u3001\u5225\u306e\u30da\u30fc\u30b8\u306b\u30b8\u30e3\u30f3\u30d7\u3059\u308b\u306a\u3069\u3001\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001onPress \u30a4\u30d9\u30f3\u30c8\u3092\u6301\u3064\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableOpacity, Text, Alert } from 'react-native';\n\nconst App = () =&gt; {\n  const showAlert = () =&gt; {\n    Alert.alert('Alert', 'Button pressed');\n  }\n\n  return (\n    &lt;TouchableOpacity onPress={showAlert}&gt;\n      &lt;Text&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableOpacity&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u753b\u9762\u306b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3059\u308b showAlert \u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u3053\u306e\u95a2\u6570\u3092 TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e onPress \u30a4\u30d9\u30f3\u30c8\u306b\u6e21\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u767a\u751f\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u4e00\u822c\u7684\u306a\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>activeOpacity: \u30bf\u30c3\u30c1\u3057\u305f\u3068\u304d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u900f\u660e\u5ea6\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>style: \u80cc\u666f\u8272\u3001\u5883\u754c\u7dda\u306e\u5e45\u306a\u3069\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>disabled: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bf\u30c3\u30c1\u30a4\u30d9\u30f3\u30c8\u3092\u7121\u52b9\u306b\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0\u30b9\u30bf\u30a4\u30eb\u306e TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableOpacity, Text, StyleSheet } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableOpacity\n      onPress={() =&gt; console.log('Button pressed')}\n      activeOpacity={0.8}\n      style={styles.button}\n      disabled={false}\n    &gt;\n      &lt;Text style={styles.text}&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableOpacity&gt;\n  );\n}\n\nconst styles = StyleSheet.create({\n  button: {\n    backgroundColor: '#1E90FF',\n    padding: 10,\n    borderRadius: 5,\n  },\n  text: {\n    color: 'white',\n    fontWeight: 'bold',\n    textAlign: 'center',\n  },\n});\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30dc\u30bf\u30f3\u30b9\u30bf\u30a4\u30eb\u3068\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u3092\u542b\u3080\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u304cStyleSheet.create\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb\u3092\u30c9\u30e9\u30c3\u30b0\u3059\u308b<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u8868\u306f TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u9069\u7528\u3055\u308c\u3001\u30dc\u30bf\u30f3\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30c6\u30ad\u30b9\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u8907\u6570\u306e\u30dc\u30bf\u30f3<\/li>\n<\/ol>\n\n\n\n<p>\u8907\u6570\u306e\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u30011 \u3064\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u8907\u6570\u306e TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u30d5\u30ec\u30c3\u30af\u30b9\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u30dc\u30bf\u30f3\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u30012 \u3064\u306e\u30dc\u30bf\u30f3\u3092\u4e26\u3079\u3066\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableOpacity, Text, View, StyleSheet } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;View style={styles.container}&gt;\n      &lt;TouchableOpacity onPress={() =&gt; console.log('Button 1 pressed')} style={styles.button}&gt;\n        &lt;Text style={styles.text}&gt;Button 1&lt;\/Text&gt;\n      &lt;\/TouchableOpacity&gt;\n      &lt;TouchableOpacity onPress={() =&gt; console.log('Button 2 pressed')} style={styles.button}&gt;\n        &lt;Text style={styles.text}&gt;Button 2&lt;\/Text&gt;\n      &lt;\/TouchableOpacity&gt;\n    &lt;\/View&gt;\n  );\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    flexDirection: 'row',\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n  button: {\n    backgroundColor: '#1E90FF',\n    padding: 10,\n    borderRadius: 5,\n    margin: 5,\n  },\n  text: {\n    color: 'white',\n    fontWeight: 'bold',\n    textAlign: 'center',\n  },\n});\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b3\u30f3\u30c6\u30ca\u3001\u30dc\u30bf\u30f3\u3001\u304a\u3088\u3073\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u3092\u542b\u3080\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8\u304c\u3001flex\u30ec\u30a4\u30a2\u30a6\u30c8\u3068StyleSheet.create\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u30b3\u30f3\u30c6\u30ca\u30b9\u30bf\u30a4\u30eb\u3067\u306f\u3001flexDirection \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30012 \u3064\u306e TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 1 \u884c\u306b\u914d\u7f6e\u3057\u3001alignItems \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 JustifyContent \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u4e2d\u592e\u63c3\u3048\u306b\u63c3\u3048\u307e\u3059\u3002 \u30dc\u30bf\u30f3\u30b9\u30bf\u30a4\u30eb\u3067\u306f\u3001\u30dc\u30bf\u30f3\u306e\u80cc\u666f\u8272\u3001\u4f59\u767d\u3001\u304a\u3088\u3073\u5883\u754c\u7dda\u306e\u89d2\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u3067\u306f\u3001\u30c6\u30ad\u30b9\u30c8\u306e\u8272\u3001\u592a\u5b57\u3001\u304a\u3088\u3073\u4e2d\u592e\u63c3\u3048\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001TouchableOpacity\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306bReact Native\u3067\u4f7f\u7528\u3055\u308c\u308b\u30e9\u30c3\u30d1\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 onPress \u30a4\u30d9\u30f3\u30c8\u3068\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3068\u5916\u89b3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u305f\u308a\u30011 \u3064\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u8907\u6570\u306e TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u8907\u6570\u306e\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc \u30cd\u30a4\u30c6\u30a3\u30d6\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3 \u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u3092\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 TouchableHighlight \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u62bc\u3057\u305f\u308a\u96e2\u3057\u305f\u308a\u3059\u308b\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3092\u5909\u66f4\u3059\u308b\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u4ed8\u304d\u306e\u30e9\u30c3\u30d7\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3082\u3042\u308a\u307e\u3059\u3002 TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u306f\u7570\u306a\u308a\u3001TouchableHighlight \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3088\u308a\u5f37\u3044\u5727\u7e2e\u52b9\u679c\u3092\u6301\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableHighlight, Text } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableHighlight onPress={() =&gt; console.log('Button pressed')}&gt;\n      &lt;Text&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableHighlight&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30dc\u30bf\u30f3\u306f TouchableHigh \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30aa\u30f3\u30d7\u30ec\u30b9\u30a4\u30d9\u30f3\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e3b\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u8d77\u52d5\u3059\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3067\u3042\u308b onPress \u30a4\u30d9\u30f3\u30c8\u3067\u3059\u3002 onPress \u30a4\u30d9\u30f3\u30c8\u3067\u306f\u3001\u30e2\u30fc\u30c0\u30eb\u30dc\u30c3\u30af\u30b9\u3092\u958b\u304f\u3001\u5225\u306e\u30da\u30fc\u30b8\u306b\u30b8\u30e3\u30f3\u30d7\u3059\u308b\u306a\u3069\u3001\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001onPress \u30a4\u30d9\u30f3\u30c8\u3092\u542b\u3080\u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableHighlight, Text, Alert } from 'react-native';\n\nconst App = () =&gt; {\n  const showAlert = () =&gt; {\n    Alert.alert('Alert', 'Button pressed');\n  }\n\n  return (\n    &lt;TouchableHighlight onPress={showAlert}&gt;\n      &lt;Text&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableHighlight&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u753b\u9762\u306b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3059\u308b showAlert \u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u3053\u306e\u95a2\u6570\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u8d77\u52d5\u3059\u308b\u3088\u3046\u306b\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e onPress \u30a4\u30d9\u30f3\u30c8\u306b\u6e21\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>TouchableHighlight \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u4e00\u822c\u7684\u306a\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>activeOpacity: \u30bf\u30c3\u30c1\u3057\u305f\u3068\u304d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u900f\u660e\u5ea6\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>underlayColor: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u62bc\u3055\u308c\u305f\u3068\u304d\u306b\u8868\u793a\u3055\u308c\u308b\u8272\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>style: \u80cc\u666f\u8272\u3001\u5883\u754c\u7dda\u306e\u5e45\u306a\u3069\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>disabled: \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30bf\u30c3\u30c1\u30a4\u30d9\u30f3\u30c8\u3092\u7121\u52b9\u306b\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0\u30b9\u30bf\u30a4\u30eb\u306e\u30bf\u30c3\u30c1\u53ef\u80fd\u30cf\u30a4\u30e9\u30a4\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableHighlight, Text, StyleSheet } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableHighlight\n      onPress={() =&gt; console.log('Button pressed')}\n      activeOpacity={0.8}\n      underlayColor=\"#1E90FF\"\n      style={styles.button}\n      disabled={false}\n    &gt;\n      &lt;Text style={styles.text}&gt;Press me&lt;\/Text&gt;\n    &lt;\/TouchableHighlight&gt;\n  );\n}\n\nconst styles = StyleSheet.create({\n  button: {\n    backgroundColor: 'white',\n    padding: 10,\n    borderRadius: 5,\n    borderWidth: 1,\n    borderColor: '#1E90FF',\n  },\n \n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8: { \u8272: &#8216;#1E90FF&#8217;, \u30d5\u30a9\u30f3\u30c8\u306e\u592a\u3055: &#8216;\u592a\u5b57&#8217;, \u30c6\u30ad\u30b9\u30c8\u6574\u5217: &#8216;\u4e2d\u592e&#8217;, }, });<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">scssCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528StyleSheet.create\u65b9\u6cd5\u521b\u5efa\u4e86\u4e00\u4e2a\u5305\u542bbutton\u548ctext\u6837\u5f0f\u7684\u6837\u5f0f\u8868\u3002\u5c06\u8be5\u6837\u5f0f\u8868\u5e94\u7528\u5230TouchableHighlight\u7ec4\u4ef6\u548cText\u7ec4\u4ef6\u4e2d\uff0c\u4ee5\u4fbf\u81ea\u5b9a\u4e49\u6309\u94ae\u7684\u6837\u5f0f\u548c\u6587\u672c\u7684\u6837\u5f0f\u3002\u5728button\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u6309\u94ae\u7684\u80cc\u666f\u989c\u8272\u3001\u8fb9\u8ddd\u3001\u8fb9\u6846\u5706\u89d2\u548c\u8fb9\u6846\u989c\u8272\u3002\u5728text\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u6587\u672c\u7684\u989c\u8272\u3001\u52a0\u7c97\u548c\u5c45\u4e2d\u5bf9\u9f50\u3002\n\n4. \u591a\u4e2a\u6309\u94ae\n\n\u53ef\u4ee5\u5728\u4e00\u4e2a\u7ec4\u4ef6\u4e2d\u4f7f\u7528\u591a\u4e2aTouchableHighlight\u7ec4\u4ef6\uff0c\u4ee5\u4fbf\u521b\u5efa\u591a\u4e2a\u53ef\u89e6\u6478\u7684\u6309\u94ae\u3002\u53ef\u4ee5\u4f7f\u7528flex\u5e03\u5c40\u6765\u63a7\u5236\u6309\u94ae\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u3002\n\n\u4f8b\u5982\uff0c\u4ee5\u4e0b\u4ee3\u7801\u53ef\u4ee5\u521b\u5efa\u4e24\u4e2a\u5e76\u6392\u7684\u6309\u94ae\uff1a\n\n<\/code><\/pre>\n\n\n\n<p>\u300c\u53cd\u5fdc\u300d\u304b\u3089\u53cd\u5fdc\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u30a4\u30f3\u30dd\u30fc\u30c8{\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30cf\u30a4\u30e9\u30a4\u30c8\u3001\u30c6\u30ad\u30b9\u30c8\u3001\u30d3\u30e5\u30fc\u3001\u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8}\u3092\u300c\u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6\u300d\u304b\u3089;<\/p>\n\n\n\n<p>const App = () =&gt; { return ( &lt;View style={styles.container}&gt; &lt;TouchableHighlight onPress={() =&gt; console.log(&#8216;Button 1 \u304c\u62bc\u3055\u308c\u307e\u3057\u305f&#8217;)} underlayColor=&#8221;#1E90FF&#8221; style={styles.button}&gt; &lt;Text style={styles.text}&gt;Button 1&lt;\/Text&gt; &lt;\/TouchableHighlight&gt; &lt;TouchableHighlight onPress={() =&gt; console.log(&#8216;Button 2 \u304c\u62bc\u3055\u308c\u307e\u3057\u305f&#8217;)} underlayColor=&#8221;#1E90FF&#8221; style={styles.button}&gt; &lt;Text style={styles.text}&gt;Button 2&lt;\/Text&gt; &lt;\/TouchableHighlight&gt;&lt;\/\u8868\u793a&gt; );}<\/p>\n\n\n\n<p>const styles = StyleSheet.create({ container: { flex: 1, flexDirection: &#8216;row&#8217;, alignItems: &#8216;center&#8217;, justifyContent: &#8216;center&#8217;, }, button: { backgroundColor: &#8216;white&#8217;, padding: 10, borderRadius: 5, borderWidth: 1, borderColor: &#8216;#1E90FF&#8217;, margin: 5, }, text: { color: &#8216;#1E90FF&#8217;, fontWeight: &#8216;bold&#8217;, textAlign: &#8216;center&#8217;, }, });<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cssCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528flex\u5e03\u5c40\u548cStyleSheet.create\u65b9\u6cd5\u521b\u5efa\u4e86\u4e00\u4e2a\u5305\u542bcontainer\u3001button\u548ctext\u6837\u5f0f\u7684\u6837\u5f0f\u8868\u3002\u5728container\u6837\u5f0f\u4e2d\uff0c\u4f7f\u7528flexDirection\u5c5e\u6027\u5c06\u4e24\u4e2aTouchableHighlight\u7ec4\u4ef6\u6392\u5217\u5728\u4e00\u884c\u4e2d\uff0c\u5e76\u4f7f\u7528alignItems\u548cjustifyContent\u5c5e\u6027\u5c06\u5b83\u4eec\u5c45\u4e2d\u5bf9\u9f50\u3002\u5728button\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u6309\u94ae\u7684\u80cc\u666f\u989c\u8272\u3001\u8fb9\u8ddd\u3001\u8fb9\u6846\u5706\u89d2\u3001\u8fb9\u6846\u989c\u8272\u548c\u6309\u538b\u6548\u679c\u989c\u8272\u3002\u5728text\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u6587\u672c\u7684\u989c\u8272\u3001\u52a0\u7c97\u548c\u5c45\u4e2d\u5bf9\u9f50\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0cTouchableHighlight\u7ec4\u4ef6\u662fReact Native\u4e2d\u7528\u4e8e\u5b9e\u73b0\u7528\u6237\u4ea4\u4e92\u7684\u4e00\u79cd\u5c01\u88c5\u7ec4\u4ef6\uff0c\u5177\u6709\u66f4\u5f3a\u7684\u6309\u538b\u6548\u679c\u3002\u53ef\u4ee5\u4f7f\u7528onPress\u4e8b\u4ef6\u548c\u6837\u5f0f\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u7684\u89e6\u6478\u53cd\u9988\u548c\u5916\u89c2\uff0c\u5e76\u53ef\u4ee5\u5728\u4e00\u4e2a\u7ec4\u4ef6\u4e2d\u4f7f\u7528\u591a\u4e2aTouchableHighlight\u7ec4\u4ef6\u6765\u521b\u5efa\u591a\u4e2a\u53ef\u89e6\u6478\u7684\u6309\u94ae\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc \u30cd\u30a4\u30c6\u30a3\u30d6\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3 \u30bf\u30c3\u30c1\u53ef\u80fd\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306a\u3057\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u73fe\u3067\u304d\u307e\u3059\u3002 TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3082\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u4ed8\u304d\u306e\u30e9\u30c3\u30d7\u3055\u308c\u305f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u304c\u3001\u30bf\u30c3\u30c1\u64cd\u4f5c\u306b\u306f\u307e\u3063\u305f\u304f\u53cd\u5fdc\u305b\u305a\u3001\u30bf\u30c3\u30c1\u3055\u308c\u305f\u3068\u304d\u306b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3092\u5909\u66f4\u3059\u308b\u3060\u3051\u3067\u3059\u3002<\/p>\n\n\n\n<p>TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30bf\u30c3\u30c1\u53ef\u80fd\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306a\u3057\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<p>TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableWithoutFeedback, View } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableWithoutFeedback onPress={() =&gt; console.log('Button pressed')}&gt;\n      &lt;View style={{ backgroundColor: '#1E90FF', padding: 10 }}&gt;\n        &lt;Text style={{ color: 'white', fontWeight: 'bold', textAlign: 'center' }}&gt;Press me&lt;\/Text&gt;\n      &lt;\/View&gt;\n    &lt;\/TouchableWithoutFeedback&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30dc\u30bf\u30f3\u306f TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002 TouchableWithoutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u30bf\u30c3\u30c1\u64cd\u4f5c\u306b\u307e\u3063\u305f\u304f\u53cd\u5fdc\u3057\u306a\u3044\u305f\u3081\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306a\u3069\u306e\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30aa\u30f3\u30d7\u30ec\u30b9\u30a4\u30d9\u30f3\u30c8<\/li>\n<\/ol>\n\n\n\n<p>TouchableWithOutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u3082 onPress \u30a4\u30d9\u30f3\u30c8\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u305d\u306e\u30a4\u30d9\u30f3\u30c8\u306b\u306f\u4e00\u5207\u5fdc\u7b54\u3057\u307e\u305b\u3093\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u30cf\u30a4\u30e9\u30a4\u30c8\u306a\u3069\u306e\u30bf\u30c3\u30c1\u5fdc\u7b54\u3092\u6301\u3064\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b TouchableWithOutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30e9\u30c3\u30d7\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001onPress \u30a4\u30d9\u30f3\u30c8\u3092\u6301\u3064\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { TouchableOpacity, View, Text, Alert } from 'react-native';\n\nconst App = () =&gt; {\n  const showAlert = () =&gt; {\n    Alert.alert('Alert', 'Button pressed');\n  }\n\n  return (\n    &lt;TouchableOpacity onPress={showAlert}&gt;\n      &lt;View style={{ backgroundColor: '#1E90FF', padding: 10 }}&gt;\n        &lt;Text style={{ color: 'white', fontWeight: 'bold', textAlign: 'center' }}&gt;Press me&lt;\/Text&gt;\n      &lt;\/View&gt;\n    &lt;\/TouchableOpacity&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u753b\u9762\u306b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3059\u308b showAlert \u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u3053\u306e\u95a2\u6570\u3092 TouchableOpacity \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e onPress \u30a4\u30d9\u30f3\u30c8\u306b\u6e21\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u767a\u751f\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>\u30bf\u30c3\u30c1\u53ef\u80fd\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306a\u3057\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3068\u30bf\u30c3\u30c1\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u4e00\u822c\u7684\u306a\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u80cc\u666f\u8272\u3001\u30d1\u30c7\u30a3\u30f3\u30b0\u3001\u5883\u754c\u7dda\u534a\u5f84\u306a\u3069\u306e\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u4f3c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0\u30b9\u30bf\u30a4\u30eb\u306e TouchableWithOutFeedback \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">vbnetCopy code<code>import React from 'react';\nimport { TouchableWithoutFeedback, View, StyleSheet } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;TouchableWithoutFeedback onPress={() =&gt; console.log('Button pressed')}&gt;\n      &lt;View style={styles.button}&gt;\n        &lt;Text style={styles.text}&gt;Press me&lt;\/Text\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>  &lt;\/View&gt;\n&lt;\/TouchableWithoutFeedback&gt;\n<\/code><\/pre>\n\n\n\n<p>); }<\/p>\n\n\n\n<p>const styles = StyleSheet.create({ \u30dc\u30bf\u30f3: { \u80cc\u666f\u8272: &#8216;\u767d&#8217;, \u30d1\u30c7\u30a3\u30f3\u30b0: 10, \u5883\u754c\u7dda\u534a\u5f84: 5, \u5883\u754c\u7dda\u5e45: 1, \u5883\u754c\u7dda\u30ab\u30e9\u30fc: &#8216;#1E90FF&#8217;, }, \u30c6\u30ad\u30b9\u30c8: { \u8272: &#8216;#1E90FF&#8217;, \u30d5\u30a9\u30f3\u30c8\u306e\u592a\u3055: &#8216;\u592a\u5b57&#8217;, \u30c6\u30ad\u30b9\u30c8\u6574\u5217: &#8216;\u4e2d\u592e&#8217;, }, });<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">scssCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528StyleSheet.create\u65b9\u6cd5\u521b\u5efa\u4e86\u4e00\u4e2a\u5305\u542bbutton\u548ctext\u6837\u5f0f\u7684\u6837\u5f0f\u8868\u3002\u5c06\u8be5\u6837\u5f0f\u8868\u5e94\u7528\u5230TouchableWithoutFeedback\u7ec4\u4ef6\u548cText\u7ec4\u4ef6\u4e2d\uff0c\u4ee5\u4fbf\u81ea\u5b9a\u4e49\u6309\u94ae\u7684\u6837\u5f0f\u548c\u6587\u672c\u7684\u6837\u5f0f\u3002\n\n4. \u591a\u4e2a\u6309\u94ae\n\n\u540c\u6837\u5730\uff0c\u53ef\u4ee5\u5728\u4e00\u4e2a\u7ec4\u4ef6\u4e2d\u4f7f\u7528\u591a\u4e2aTouchableWithoutFeedback\u7ec4\u4ef6\uff0c\u4ee5\u4fbf\u521b\u5efa\u591a\u4e2a\u53ef\u89e6\u6478\u7684\u7ec4\u4ef6\u3002\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0cTouchableWithoutFeedback\u7ec4\u4ef6\u4e0d\u4f1a\u5bf9\u89e6\u6478\u64cd\u4f5c\u505a\u51fa\u4efb\u4f55\u53cd\u5e94\uff0c\u56e0\u6b64\u5fc5\u987b\u5c06\u5b83\u4eec\u5305\u88f9\u5728\u5177\u6709\u89e6\u6478\u53cd\u5e94\u7684\u7ec4\u4ef6\u4e2d\uff0c\u4f8b\u5982TouchableOpacity\u3001TouchableHighlight\u7b49\u3002\n\n\u4f8b\u5982\uff0c\u4ee5\u4e0b\u4ee3\u7801\u53ef\u4ee5\u521b\u5efa\u4e24\u4e2a\u5e76\u6392\u7684\u53ef\u89e6\u6478\u7684\u7ec4\u4ef6\uff1a\n\n<\/code><\/pre>\n\n\n\n<p>\u300c\u53cd\u5fdc\u300d\u304b\u3089\u53cd\u5fdc\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u30a4\u30f3\u30dd\u30fc\u30c8 { \u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6, \u30d3\u30e5\u30fc, \u30c6\u30ad\u30b9\u30c8, \u30b9\u30bf\u30a4\u30eb\u30b7\u30fc\u30c8 } \u304b\u3089 &#8216;\u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6&#8217; ;<\/p>\n\n\n\n<p>const App = () =&gt; { return ( &lt;View style={styles.container}&gt; &lt;TouchableOpacity onPress={() =&gt; console.log(&#8216;Button 1 \u304c\u62bc\u3055\u308c\u307e\u3057\u305f&#8217;)}&gt; &lt;View style={styles.button}&gt; &lt;Text style={styles.text}&gt;Button 1&lt;\/Text&gt; &lt;\/View&gt; &lt;\/TouchableOpacity&gt; &lt;TouchableOpacity onPress={() =&gt; console.log(&#8216;Button 2 \u304c\u62bc\u3055\u308c\u307e\u3057\u305f&#8217;)}&gt; &lt;\u30d3\u30e5\u30fc \u30b9\u30bf\u30a4\u30eb={styles.button}&gt; &lt;Text style={styles.text}&gt;Button 2&lt;\/Text&gt; &lt;\/View&gt; &lt;\/TouchableOpacity&gt; &lt;\/\u8868\u793a&gt; );}<\/p>\n\n\n\n<p>const styles = StyleSheet.create({ container: { flex: 1, flexDirection: &#8216;row&#8217;, alignItems: &#8216;center&#8217;, justifyContent: &#8216;center&#8217;, }, button: { backgroundColor: &#8216;white&#8217;, padding: 10, borderRadius: 5, borderWidth: 1, borderColor: &#8216;#1E90FF&#8217;, margin: 5, }, text: { color: &#8216;#1E90FF&#8217;, fontWeight: &#8216;bold&#8217;, textAlign: &#8216;center&#8217;, }, });<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cssCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528flex\u5e03\u5c40\u548cStyleSheet.create\u65b9\u6cd5\u521b\u5efa\u4e86\u4e00\u4e2a\u5305\u542bcontainer\u3001button\u548ctext\u6837\u5f0f\u7684\u6837\u5f0f\u8868\u3002\u5728container\u6837\u5f0f\u4e2d\uff0c\u4f7f\u7528flexDirection\u5c5e\u6027\u5c06\u4e24\u4e2aTouchableWithoutFeedback\u7ec4\u4ef6\u6392\u5217\u5728\u4e00\u884c\u4e2d\uff0c\u5e76\u4f7f\u7528alignItems\u548cjustifyContent\u5c5e\u6027\u5c06\u5b83\u4eec\u5c45\u4e2d\u5bf9\u9f50\u3002\u5728button\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u7ec4\u4ef6\u7684\u80cc\u666f\u989c\u8272\u3001\u8fb9\u8ddd\u3001\u8fb9\u6846\u5706\u89d2\u548c\u8fb9\u6846\u989c\u8272\u3002\u5728text\u6837\u5f0f\u4e2d\uff0c\u8bbe\u7f6e\u4e86\u6587\u672c\u7684\u989c\u8272\u3001\u52a0\u7c97\u548c\u5c45\u4e2d\u5bf9\u9f50\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0cTouchableWithoutFeedback\u7ec4\u4ef6\u662fReact Native\u4e2d\u7528\u4e8e\u5b9e\u73b0\u7528\u6237\u4ea4\u4e92\u7684\u4e00\u79cd\u5c01\u88c5\u7ec4\u4ef6\uff0c\u4e0d\u4f1a\u5bf9\u89e6\u6478\u64cd\u4f5c\u505a\u51fa\u4efb\u4f55\u53cd\u5e94\u3002\u53ef\u4ee5\u4f7f\u7528\u6837\u5f0f\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u7684\u5916\u89c2\uff0c\u4f46\u5fc5\u987b\u5c06\u5b83\u4eec\u5305\u88f9\u5728\u5177\u6709\u89e6\u6478\u53cd\u5e94\u7684\u7ec4\u4ef6\u4e2d\uff0c\u4f8b\u5982TouchableOpacity\u3001TouchableHighlight\u7b49\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u306b\u53cd\u5fdc\u3059\u308b \u30dc\u30bf\u30f3\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u3044\u304f\u3064\u304b\u306e\u4e00\u822c\u7684\u306a\u30dc\u30bf\u30f3\u30b9\u30bf\u30a4\u30eb\u304c\u7d44\u307f\u8fbc\u307e\u308c\u305f\u5358\u7d14\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3057\u3001\u30dc\u30bf\u30f3\u306e\u30c6\u30ad\u30b9\u30c8\u3068\u30a4\u30d9\u30f3\u30c8\u30cf\u30f3\u30c9\u30e9\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30dc\u30bf\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30dc\u30bf\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<p>Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u5358\u7d14\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\n\nconst App = () =&gt; {\n  return (\n    &lt;Button\n      title=\"Press me\"\n      onPress={() =&gt; console.log('Button pressed')}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u5358\u7d14\u306a\u30dc\u30bf\u30f3\u304c\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002 Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u30b9\u30bf\u30a4\u30eb\u3068\u30c6\u30ad\u30b9\u30c8\u304c\u7d44\u307f\u8fbc\u307e\u308c\u3066\u304a\u308a\u3001\u30c6\u30ad\u30b9\u30c8\u3068\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306f props \u3092\u4f7f\u7528\u3057\u3066\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30bf\u30a4\u30c8\u30eb\u3068\u30aa\u30f3\u30d7\u30ec\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>\u30dc\u30bf\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30dc\u30bf\u30f3\u306e\u30c6\u30ad\u30b9\u30c8\u3068\u30a4\u30d9\u30f3\u30c8\u30cf\u30f3\u30c9\u30e9\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3059\u308b title \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 onPress \u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>title \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u30dc\u30bf\u30f3\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>&lt;Button\n  title=\"Click me\"\n  onPress={() =&gt; console.log('Button pressed')}\n\/&gt;\n<\/code><\/pre>\n\n\n\n<p>onPress \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u30dc\u30bf\u30f3\u306e\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>&lt;Button\n  title=\"Click me\"\n  onPress={() =&gt; Alert.alert('Alert', 'Button pressed')}\n\/&gt;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u753b\u9762\u306b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u8272\u306e\u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30dc\u30bf\u30f3\u306e\u8272\u3092\u8a2d\u5b9a\u3059\u308b color \u30d7\u30ed\u30d1\u30c6\u30a3\u3082\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001iOS \u3084 Android \u306a\u3069\u306e\u7279\u5b9a\u306e\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306b\u306e\u307f\u9069\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u8d64\u3044\u8272\u306e\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>&lt;Button\n  title=\"Press me\"\n  color=\"red\"\n  onPress={() =&gt; console.log('Button pressed')}\n\/&gt;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u969c\u5bb3\u8005\u7528\u7269\u4ef6<\/li>\n<\/ol>\n\n\n\n<p>Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30dc\u30bf\u30f3\u3092\u7121\u52b9\u306b\u3059\u308b disabled \u30d7\u30ed\u30d1\u30c6\u30a3\u3082\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092 true \u306b\u8a2d\u5b9a\u3059\u308b\u3068\u3001\u30dc\u30bf\u30f3\u306f\u7070\u8272\u306b\u5909\u308f\u308a\u3001\u30bf\u30c3\u30c1\u64cd\u4f5c\u306b\u5fdc\u7b54\u3057\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u7121\u52b9\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>&lt;Button\n  title=\"Press me\"\n  disabled={true}\n  onPress={() =&gt; console.log('Button pressed')}\n\/&gt;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3<\/li>\n<\/ol>\n\n\n\n<p>Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30dc\u30bf\u30f3\u306e\u5916\u89b3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u3053\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001iOS \u3084 Android \u306a\u3069\u306e\u7279\u5b9a\u306e\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306b\u306e\u307f\u9069\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u30ab\u30b9\u30bf\u30e0 \u30b9\u30bf\u30a4\u30eb\u306e\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>&lt;Button\n  title=\"Press me\"\n  style={{ backgroundColor: 'white', borderWidth: 1, borderColor: '#1E90FF' }}\n  onPress={() =&gt; console.log('Button pressed')}\n\/&gt;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001style \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30dc\u30bf\u30f3\u306e\u80cc\u666f\u8272\u3001\u5883\u754c\u7dda\u306e\u5e45\u3001\u304a\u3088\u3073\u5883\u754c\u7dda\u306e\u8272\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001Button \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001React Native \u3067\u5358\u7d14\u306a\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b\u30e9\u30c3\u30d1\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308a\u3001\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u308b\u7d44\u307f\u8fbc\u307f\u306e\u30b9\u30bf\u30a4\u30eb\u3068\u30c6\u30ad\u30b9\u30c8\u3092\u5099\u3048\u3066\u3044\u307e\u3059\u3002 title\u3001onPress\u3001color\u3001\u304a\u3088\u3073\u7121\u52b9\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30dc\u30bf\u30f3\u306e\u30c6\u30ad\u30b9\u30c8\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u3001\u8272\u3001\u304a\u3088\u3073\u7121\u52b9\u72b6\u614b\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002 style \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30dc\u30bf\u30f3\u306e\u5916\u89b3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u304c\u3001\u3053\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u306f iOS \u3084 Android \u306a\u3069\u306e\u7279\u5b9a\u306e\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067\u306e\u307f\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u306b\u53cd\u5fdc\u3059\u308b \u30a2\u30e9\u30fc\u30c8\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u30dc\u30bf\u30f3\u3092\u542b\u3080\u3053\u3068\u304c\u3067\u304d\u308b\u30a2\u30e9\u30fc\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30e9\u30fc\u30c8\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u306b\u5fdc\u7b54\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30e9\u30fc\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8a73\u7d30\u306a\u8aac\u660e\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30e9\u30fc\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Alert, Button } from 'react-native';\n\nconst App = () =&gt; {\n  const showAlert = () =&gt; {\n    Alert.alert('Alert', 'This is a message', [\n      { text: 'OK', onPress: () =&gt; console.log('OK pressed') },\n      { text: 'Cancel', onPress: () =&gt; console.log('Cancel pressed'), style: 'cancel' },\n    ]);\n  }\n\n  return (\n    &lt;Button\n      title=\"Show alert\"\n      onPress={showAlert}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u305f\u3068\u304d\u306b\u30bf\u30a4\u30c8\u30eb\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u304a\u3088\u3073\u30a2\u30af\u30b7\u30e7\u30f3 \u30dc\u30bf\u30f3\u3092\u542b\u3080\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3059\u308b showAlert \u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306b\u306f\u30012 \u3064\u306e\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306b\u5bfe\u5fdc\u3059\u308b &#8220;OK&#8221; \u3068 &#8220;Cancel&#8221; \u306e 2 \u3064\u306e\u30a2\u30af\u30b7\u30e7\u30f3 \u30dc\u30bf\u30f3\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30a2\u30e9\u30fc\u30c8.\u30a2\u30e9\u30fc\u30c8\u30e1\u30bd\u30c3\u30c9<\/li>\n<\/ol>\n\n\n\n<p>Alert \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3057\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u304a\u3088\u3073\u30a2\u30af\u30b7\u30e7\u30f3\u30dc\u30bf\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u308b alert \u30e1\u30bd\u30c3\u30c9\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30e1\u30bd\u30c3\u30c9\u306e\u69cb\u6587\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">scssCopy code<code>Alert.alert(title, message, buttonArray, options)\n<\/code><\/pre>\n\n\n\n<p>\u305d\u306e\u4e2d\u3067\u3001\u30bf\u30a4\u30c8\u30eb\u3068\u30e1\u30c3\u30bb\u30fc\u30b8\u30d1\u30e9\u30e1\u30fc\u30bf\u306f\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306e\u30bf\u30a4\u30c8\u30eb\u3068\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u3001buttonArray\u30d1\u30e9\u30e1\u30fc\u30bf\u306f\u30a2\u30af\u30b7\u30e7\u30f3\u30dc\u30bf\u30f3\u306e\u914d\u5217\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u3001options \u30d1\u30e9\u30e1\u30fc\u30bf\u306f\u4ed6\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>buttonArray \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306f\u914d\u5217\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u3001\u5404\u8981\u7d20\u306f\u6b21\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u542b\u3080\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>text: \u30dc\u30bf\u30f3\u306e\u30c6\u30ad\u30b9\u30c8<\/li>\n\n\n\n<li>onPress: \u30dc\u30bf\u30f3\u306e\u30a4\u30d9\u30f3\u30c8\u30cf\u30f3\u30c9\u30e9<\/li>\n\n\n\n<li>\u30b9\u30bf\u30a4\u30eb: \u30dc\u30bf\u30f3\u306e\u30b9\u30bf\u30a4\u30eb (\u4f8b: &#8216;\u30ad\u30e3\u30f3\u30bb\u30eb&#8217;<\/li>\n<\/ul>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Alert } from 'react-native';\n\nconst App = () =&gt; {\n  const showAlert = () =&gt; {\n    Alert.alert('Custom alert', 'This is a custom message', [\n      { text: 'OK', onPress: () =&gt; console.log('OK pressed') },\n      { text: 'Cancel', onPress: () =&gt; console.log('Cancel pressed'), style: 'cancel' },\n      { text: 'Ignore', onPress: () =&gt; console.log('Ignore pressed') },\n    ], { cancelable: false });\n  }\n\n  return (\n    &lt;Button\n      title=\"Show alert\"\n      onPress={showAlert}\n    \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c Alert.alert \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306b\u306f\u30013 \u3064\u306e\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306b\u5bfe\u5fdc\u3059\u308b [OK]\u3001[\u30ad\u30e3\u30f3\u30bb\u30eb]\u3001\u304a\u3088\u3073 [\u7121\u8996] \u306e 3 \u3064\u306e\u30a2\u30af\u30b7\u30e7\u30f3 \u30dc\u30bf\u30f3\u304c\u3042\u308a\u307e\u3059\u3002 options \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306e cancelable \u5c5e\u6027\u3092 false \u306b\u8a2d\u5b9a\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30a2\u30af\u30b7\u30e7\u30f3 \u30dc\u30bf\u30f3\u306e 1 \u3064\u3092\u9078\u629e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u305d\u306e\u4ed6\u306e\u30aa\u30d7\u30b7\u30e7\u30f3<\/li>\n<\/ol>\n\n\n\n<p>Alert \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306e\u8ffd\u52a0\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u8ffd\u52a0\u30aa\u30d7\u30b7\u30e7\u30f3\u3082\u3042\u308a\u307e\u3059\u3002 \u4e00\u822c\u7684\u306b\u4f7f\u7528\u3055\u308c\u308b\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>cancelable: \u30e6\u30fc\u30b6\u30fc\u304c\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306e\u5916\u5074\u306e\u9818\u57df\u3092\u62bc\u3057\u3066\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u9589\u3058\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u304b\u3069\u3046\u304b\u3092\u6307\u5b9a\u3059\u308b\u30d6\u30fc\u30eb\u5024\u3002 \u30c7\u30d5\u30a9\u30eb\u30c8\u306f true \u3067\u3059\u3002<\/li>\n\n\n\n<li>onDismiss: \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u9589\u3058\u3089\u308c\u305f\u3068\u304d\u306b\u547c\u3073\u51fa\u3055\u308c\u3001\u30d5\u30a9\u30fc\u30e0\u306e\u30ea\u30bb\u30c3\u30c8\u3084\u30c7\u30fc\u30bf\u306e\u30af\u30ea\u30a2\u306a\u3069\u3001\u3053\u306e\u6642\u70b9\u3067\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u4f5c\u6210\u3057\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u9589\u3058\u3089\u308c\u305f\u3068\u304d\u306b\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { Alert, Button, View, TextInput, StyleSheet } from 'react-native';\n\nconst App = () =&gt; {\n  const [inputValue, setInputValue] = useState('');\n\n  const showAlert = () =&gt; {\n    Alert.alert('Alert', `Are you sure you want to delete \"${inputValue}\"?`, [\n      { text: 'Yes', onPress: () =&gt; deleteItem() },\n      { text: 'No', onPress: () =&gt; console.log('Cancel pressed'), style: 'cancel' },\n    ], { cancelable: false, onDismiss: () =&gt; resetInput() });\n  }\n\n  const deleteItem = () =&gt; {\n    console.log(`Deleted \"${inputValue}\"`);\n    resetInput();\n  }\n\n  const resetInput = () =&gt; {\n    setInputValue('');\n  }\n\n  return (\n    &lt;View style={styles.container}&gt;\n      &lt;TextInput\n        style={styles.input}\n        placeholder=\"Enter item name\"\n        value={inputValue}\n        onChangeText={text =&gt; setInputValue(text)}\n      \/&gt;\n      &lt;Button\n        title=\"Delete\"\n        onPress={showAlert}\n        disabled={!inputValue}\n      \/&gt;\n    &lt;\/View&gt;\n  );\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n  input: {\n    borderWidth: 1,\n    borderColor: 'gray',\n    padding: 10,\n    borderRadius: 5,\n    width: '80%',\n    marginBottom: 20,\n  },\n});\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30dc\u30c3\u30af\u30b9\u3068\u524a\u9664\u30dc\u30bf\u30f3\u3092\u542b\u3080\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30dc\u30c3\u30af\u30b9\u306b\u30c6\u30ad\u30b9\u30c8\u3092\u5165\u529b\u3057\u3066\u524a\u9664\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u9805\u76ee\u306e\u524a\u9664\u3092\u78ba\u8a8d\u3059\u308b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c [\u306f\u3044] \u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u3001\u9805\u76ee\u304c\u524a\u9664\u3055\u308c\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002 \u30e6\u30fc\u30b6\u30fc\u304c [\u3044\u3044\u3048] \u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u3082\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u306f\u5b9f\u884c\u3055\u308c\u307e\u305b\u3093\u3002 \u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u9589\u3058\u308b\u3068\u3001resetInput \u95a2\u6570\u304c\u547c\u3073\u51fa\u3055\u308c\u3001\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30dc\u30c3\u30af\u30b9\u5185\u306e\u30c6\u30ad\u30b9\u30c8\u304c\u30af\u30ea\u30a2\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001Alert \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u30dc\u30bf\u30f3\u3092\u542b\u3080\u3053\u3068\u304c\u3067\u304d\u3001\u30e6\u30fc\u30b6\u30fc\u30a2\u30af\u30b7\u30e7\u30f3\u306b\u5fdc\u7b54\u3067\u304d\u308b\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b React Native \u3067\u4f7f\u7528\u3055\u308c\u308b\u30e9\u30c3\u30d1\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 Alert.alert \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30b9\u30bf\u30e0\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u3092\u4f5c\u6210\u3057\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u30a2\u30af\u30b7\u30e7\u30f3 \u30dc\u30bf\u30f3\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002 cancelable \u30aa\u30d7\u30b7\u30e7\u30f3\u3068 onDismissed \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u306e\u4ed6\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u8a2d\u5b9a\u3057\u305f\u308a\u3001\u8b66\u544a\u30dc\u30c3\u30af\u30b9\u304c\u9589\u3058\u3089\u308c\u305f\u3068\u304d\u306b\u3001\u30d5\u30a9\u30fc\u30e0\u306e\u30ea\u30bb\u30c3\u30c8\u3084\u30c7\u30fc\u30bf\u306e\u30af\u30ea\u30a2\u306a\u3069\u3001\u7279\u5b9a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb \u53cd\u5fdc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306f\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30b9\u30bf\u30c3\u30af\u3001\u30bf\u30d6\u3001\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306e\u4e00\u822c\u7684\u306a\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002 \u4f7f\u3044\u3084\u3059\u3044 API \u306e\u30bb\u30c3\u30c8\u306b\u52a0\u3048\u3066\u3001\u958b\u767a\u8005\u304c\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd\u3092\u3059\u3070\u3084\u304f\u69cb\u7bc9\u3059\u308b\u306e\u306b\u5f79\u7acb\u3064\u7d44\u307f\u8fbc\u307f\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306b\u5fc5\u8981\u306a\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u3092\u958b\u304d\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npm install @react-navigation\/native\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306b\u5fc5\u8981\u306a\u30b3\u30a2\u4f9d\u5b58\u95a2\u4fc2\u3092\u542b\u3080@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u8ffd\u52a0\u306e\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u306b\u52a0\u3048\u3066\u3001\u5fc5\u8981\u306a\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306e\u7a2e\u985e\u306b\u5bfe\u5fdc\u3059\u308b\u8ffd\u52a0\u306e\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001@react-navigation\/stack \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30bf\u30d6\u3092\u4f7f\u7528\u3057\u3066\u30ca\u30d3\u30b2\u30fc\u30c8\u3059\u308b\u5834\u5408\u306f\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30dc\u30c8\u30e0\u30bf\u30d6\u307e\u305f\u306f@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30de\u30c6\u30ea\u30a2\u30eb\u30c8\u30c3\u30d7\u30bf\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u306f @react-navigation\/stack \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>npm install @react-navigation\/stack\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30c6\u30ca\u30fc\u3092\u8a2d\u5b9a\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u306f\u3001\u6b21\u306e\u3088\u3046\u306b createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import 'react-native-gesture-handler';\nimport React from 'react';\nimport { NavigationContainer } from '@react-navigation\/native';\nimport { createStackNavigator } from '@react-navigation\/stack';\nimport HomeScreen from '.\/HomeScreen';\nimport DetailsScreen from '.\/DetailsScreen';\n\nconst Stack = createStackNavigator();\n\nconst App = () =&gt; {\n  return (\n    &lt;NavigationContainer&gt;\n      &lt;Stack.Navigator&gt;\n        &lt;Stack.Screen name=\"Home\" component={HomeScreen} \/&gt;\n        &lt;Stack.Screen name=\"Details\" component={DetailsScreen} \/&gt;\n      &lt;\/Stack.Navigator&gt;\n    &lt;\/NavigationContainer&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30c3\u30af \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30c6\u30ca\u30fc\u304c\u4f5c\u6210\u3055\u308c\u3001\u305d\u306e\u30b3\u30f3\u30c6\u30ca\u30fc\u306b\u306f HomeScreen \u3068 DetailsScreen \u306e 2 \u3064\u306e\u753b\u9762\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u3059\u3002 NavigationContainer \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3001\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u3092\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30b8\u30a7\u30b9\u30c1\u30e3\u306e\u4f9d\u5b58\u95a2\u4fc2\u3092\u5c0e\u5165\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>RN\u3067\u306f\u3001\u30b8\u30a7\u30b9\u30c1\u30e3\u3068\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u304c\u5bc6\u63a5\u306b\u30ea\u30f3\u30af\u3055\u308c\u3066\u304a\u308a\u3001\u3053\u306e\u4f9d\u5b58\u95a2\u4fc2\u306b\u3088\u3063\u3066\u6b21\u306e\u3088\u3046\u306a\u30b8\u30a7\u30b9\u30c1\u30e3\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u6700\u9069\u5316\u3067\u304d\u308b\u305f\u3081\u3001\u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6\u30b8\u30a7\u30b9\u30c1\u30e3\u30cf\u30f3\u30c9\u30e9\u30fc\u306e\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u5c0e\u5165\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>import 'react-native-gesture-handler';\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u4f9d\u5b58\u95a2\u4fc2\u306e\u30ea\u30f3\u30af<\/li>\n<\/ol>\n\n\n\n<p>react-native-gesture-handler\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3067\u3042\u308b\u305f\u3081\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30ea\u30f3\u30af\u3067\u304d\u308b\u30cd\u30a4\u30c6\u30a3\u30d6\u4f9d\u5b58\u95a2\u4fc2\u3092\u30ea\u30f3\u30af\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npx react-native link react-native-gesture-handler\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>\u7d42\u3048\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u4e0a\u8a18\u306e\u624b\u9806\u3092\u5b8c\u4e86\u3059\u308b\u3068\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306fReact Navigation\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd\u3092\u5099\u3048\u3066\u3044\u308b\u306f\u305a\u3067\u3059\u3002 \u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3001\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3001\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306a\u3069\u3001\u3055\u307e\u3056\u307e\u306a\u30bf\u30a4\u30d7\u306e\u30ac\u30a4\u30c9\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u7d44\u307f\u8fbc\u307f\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b9\u30bf\u30c3\u30af \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30c6\u30ca\u30fc\u306f createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30c6\u30ca\u30fc \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3055\u308c\u307e\u3059\u3002 \u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u306b\u306f\u3001\u30db\u30fc\u30e0\u30b9\u30af\u30ea\u30fc\u30f3\u3068\u8a73\u7d30\u753b\u9762\u306e2\u3064\u306e\u753b\u9762\u304c\u3042\u308a\u3001Stack.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Stack.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001name \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u753b\u9762\u306e\u540d\u524d\u3092\u8a2d\u5b9a\u3057\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u305d\u306e\u753b\u9762\u306b\u5bfe\u5fdc\u3059\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u753b\u9762\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Navigation\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3068\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd\u304c\u8ffd\u52a0\u3055\u308c\u3001\u30b9\u30bf\u30c3\u30af\u3001\u30bf\u30d6\u3001\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306a\u3069\u306e\u3055\u307e\u3056\u307e\u306a\u30bf\u30a4\u30d7\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002 createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u3092\u4f5c\u6210\u3057\u3001Stack.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30c3\u30af\u5185\u306e\u753b\u9762\u3092\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u753b\u9762\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3057\u305f\u308a\u3001\u7d44\u307f\u8fbc\u307f\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native Navigation\u304cStackNavigatorChatGPT\u3092\u4f5c\u6210\u3059\u308b\u8a73\u7d30\u3092\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3055\u307e\u3056\u307e\u306a\u30bf\u30a4\u30d7\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u305d\u306e\u4e2d\u3067\u3001StackNavigator\u306f\u3001Web\u30d6\u30e9\u30a6\u30b6\u306e\u5c65\u6b74\u3068\u540c\u69d8\u306b\u3001\u7570\u306a\u308b\u753b\u9762\u9593\u3092\u79fb\u52d5\u304a\u3088\u3073\u30dd\u30c3\u30d7\u3067\u304d\u308b\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306e\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u53cd\u5fdc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001React Navigation\u3068\u305d\u308c\u306b\u95a2\u9023\u3059\u308b\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u3092\u958b\u304d\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npm install @react-navigation\/native @react-navigation\/stack\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u304a\u3088\u3073@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30b9\u30bf\u30c3\u30af\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u306b\u306f React Navigation \u306e\u30b3\u30a2\u4f9d\u5b58\u95a2\u4fc2\u304c\u542b\u307e\u308c\u3001@react-\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30b9\u30bf\u30c3\u30af\u30d1\u30c3\u30b1\u30fc\u30b8\u306f\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e API \u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a8\u30f3\u30c8\u30ea \u30d5\u30a1\u30a4\u30eb\u3067\u3001\u30b9\u30bf\u30c3\u30af \u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u30b9\u30bf\u30c3\u30af \u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { NavigationContainer } from '@react-navigation\/native';\nimport { createStackNavigator } from '@react-navigation\/stack';\nimport HomeScreen from '.\/HomeScreen';\nimport DetailsScreen from '.\/DetailsScreen';\n\nconst Stack = createStackNavigator();\n\nconst App = () =&gt; {\n  return (\n    &lt;NavigationContainer&gt;\n      &lt;Stack.Navigator&gt;\n        &lt;Stack.Screen name=\"Home\" component={HomeScreen} \/&gt;\n        &lt;Stack.Screen name=\"Details\" component={DetailsScreen} \/&gt;\n      &lt;\/Stack.Navigator&gt;\n    &lt;\/NavigationContainer&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306f createStackNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c6\u30ca\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30b9\u30bf\u30c3\u30af\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306b\u306f\u3001\u30db\u30fc\u30e0\u30b9\u30af\u30ea\u30fc\u30f3\u3068\u8a73\u7d30\u753b\u9762\u306e2\u3064\u306e\u753b\u9762\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u753b\u9762\u306f\u3001Stack.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Stack.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001name \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u753b\u9762\u306e\u540d\u524d\u3092\u8a2d\u5b9a\u3057\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u305d\u306e\u753b\u9762\u306b\u5bfe\u5fdc\u3059\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u753b\u9762\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u753b\u9762\u3092\u9032\u3081\u3066\u30dd\u30c3\u30d7\u30a2\u30c3\u30d7\u3057\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u4ed6\u306e\u90e8\u5206\u3067\u306f\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u753b\u9762\u3092\u9032\u3081\u305f\u308a\u30dd\u30c3\u30d7\u30a2\u30c3\u30d7\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067 useNavigation \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst HomeScreen = () =&gt; {\n  const navigation = useNavigation();\n\n  const goToDetails = () =&gt; {\n    navigation.navigate('Details');\n  }\n\n  return (\n    &lt;Button title=\"Go to details\" onPress={goToDetails} \/&gt;\n  );\n}\n\nexport default HomeScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3057\u3001goToDetails \u95a2\u6570\u306e navigation.navigate \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066 [\u8a73\u7d30\u753b\u9762] \u753b\u9762\u306b\u9032\u307f\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30ab\u30b9\u30bf\u30e0\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3<\/li>\n<\/ol>\n\n\n\n<p>StackNavigator \u3067\u306f\u3001options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u753b\u9762\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u30bf\u30a4\u30c8\u30eb\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst DetailsScreen = () =&gt; {\n  const navigation = useNavigation();\n\n \n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>navigation.setOptions({ title: &#8216;Details Screen&#8217;, headerStyle: { backgroundColor: &#8216;#f4511e&#8217;, }, headerTintColor: &#8216;#fff&#8217;, headerTitleStyle: { fontWeight: &#8216;bold&#8217;, }, });<\/p>\n\n\n\n<p>const goBack = () =&gt; { navigation.goBack(); }<\/p>\n\n\n\n<p>return ( &lt;\u30dc\u30bf\u30f3\u30bf\u30a4\u30c8\u30eb=&#8221;Go back&#8221; onPress={goBack} \/&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u8a73\u7d30\u753b\u9762\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528navigation.setOptions\u65b9\u6cd5\u6765\u8bbe\u7f6eDetailsScreen\u5c4f\u5e55\u7684\u5bfc\u822a\u9009\u9879\u3002\u53ef\u4ee5\u8bbe\u7f6e\u6807\u9898\u3001\u6837\u5f0f\u548c\u4e8b\u4ef6\u5904\u7406\u51fd\u6570\u7b49\u9009\u9879\uff0c\u4f8b\u5982\u8bbe\u7f6e\u6807\u9898\u4e3a'Details Screen'\uff0c\u8bbe\u7f6e\u5934\u90e8\u80cc\u666f\u989c\u8272\u4e3a'#f4511e'\uff0c\u8bbe\u7f6e\u6807\u9898\u6587\u5b57\u989c\u8272\u4e3a'#fff'\uff0c\u8bbe\u7f6e\u6807\u9898\u5b57\u4f53\u52a0\u7c97\u7b49\u3002\n\n\u5728\u8fd4\u56de\u6309\u94ae\u7684\u4e8b\u4ef6\u5904\u7406\u51fd\u6570\u4e2d\uff0c\u4f7f\u7528navigation.goBack\u65b9\u6cd5\u6765\u5f39\u51fa\u5c4f\u5e55\u5e76\u8fd4\u56de\u5230\u4e0a\u4e00\u4e2a\u5c4f\u5e55\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0c\u4f7f\u7528React Navigation\u521b\u5efaStackNavigator\u53ef\u4ee5\u5b9e\u73b0\u5806\u6808\u5bfc\u822a\uff0c\u5e76\u53ef\u4ee5\u5728\u4e0d\u540c\u7684\u5c4f\u5e55\u4e4b\u95f4\u8fdb\u884c\u63a8\u8fdb\u548c\u5f39\u51fa\u64cd\u4f5c\u3002\u53ef\u4ee5\u4f7f\u7528createStackNavigator\u51fd\u6570\u521b\u5efaStackNavigator\uff0c\u5e76\u4f7f\u7528Stack.Screen\u7ec4\u4ef6\u6765\u5b9a\u4e49\u5c4f\u5e55\u3002\u53ef\u4ee5\u5728\u7ec4\u4ef6\u4e2d\u4f7f\u7528useNavigation\u94a9\u5b50\u6765\u83b7\u53d6navigation\u5bf9\u8c61\uff0c\u5e76\u4f7f\u7528navigation.navigate\u548cnavigation.goBack\u65b9\u6cd5\u6765\u63a8\u8fdb\u548c\u5f39\u51fa\u5c4f\u5e55\u3002\u8fd8\u53ef\u4ee5\u4f7f\u7528options\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u5c4f\u5e55\u7684\u5bfc\u822a\u9009\u9879\uff0c\u4f8b\u5982\u6807\u9898\u3001\u6837\u5f0f\u548c\u4e8b\u4ef6\u5904\u7406\u51fd\u6570\u7b49\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 React\u30cd\u30a4\u30c6\u30a3\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306f\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u30c1\u30e3\u30c3\u30c8GPT\u3092\u4f5c\u6210\u3057\u307e\u3059<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3055\u307e\u3056\u307e\u306a\u30bf\u30a4\u30d7\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u305d\u306e\u4e2d\u3067\u3001TabNavigator\u306f\u3001\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3057\u3001\u7570\u306a\u308b\u30bf\u30d6\u3092\u5207\u308a\u66ff\u3048\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u53cd\u5fdc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001React Navigation\u3068\u305d\u308c\u306b\u95a2\u9023\u3059\u308b\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u3092\u958b\u304d\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npm install @react-navigation\/native @react-navigation\/bottom-tabs\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u306b React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306e\u30b3\u30a2\u4f9d\u5b58\u95a2\u4fc2\u304c\u542b\u307e\u308c\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30dc\u30c8\u30e0\u30bf\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u30bf\u30d6\u4ed8\u304d\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e API \u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u63d0\u4f9b\u3059\u308b@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u304a\u3088\u3073@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30dc\u30c8\u30e0\u30bf\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a8\u30f3\u30c8\u30ea \u30d5\u30a1\u30a4\u30eb\u3067\u3001\u30bf\u30d6 \u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u6b21\u306e\u3088\u3046\u306b\u3001\u4f5c\u6210\u30dc\u30c8\u30e0\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { NavigationContainer } from '@react-navigation\/native';\nimport { createBottomTabNavigator } from '@react-navigation\/bottom-tabs';\nimport HomeScreen from '.\/HomeScreen';\nimport SettingsScreen from '.\/SettingsScreen';\n\nconst Tab = createBottomTabNavigator();\n\nconst App = () =&gt; {\n  return (\n    &lt;NavigationContainer&gt;\n      &lt;Tab.Navigator&gt;\n        &lt;Tab.Screen name=\"Home\" component={HomeScreen} \/&gt;\n        &lt;Tab.Screen name=\"Settings\" component={SettingsScreen} \/&gt;\n      &lt;\/Tab.Navigator&gt;\n    &lt;\/NavigationContainer&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001TabNavigator \u306f createBottomTabNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3001NavigationContainer \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30bf\u30d6\u30ca\u30d3\u30b2\u30fc\u30bf\u306b\u306f\u3001[\u30db\u30fc\u30e0] \u3068 [\u8a2d\u5b9a] \u306e 2 \u3064\u306e\u30bf\u30d6\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30e9\u30d9\u30eb\u306f\u3001Tab.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Tab.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001name \u5c5e\u6027\u3092\u4f7f\u7528\u3057\u3066\u30e9\u30d9\u30eb\u306e\u540d\u524d\u3092\u8a2d\u5b9a\u3057\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30e9\u30d9\u30eb\u306b\u5bfe\u5fdc\u3059\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30a2\u30a4\u30b3\u30f3\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u30e9\u30d9\u30eb\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30c8\u30b0\u30eb\u30bf\u30d6<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u4ed6\u306e\u90e8\u5206\u3067\u306f\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30d6\u3092\u5207\u308a\u66ff\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067 useNavigation \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst HomeScreen = () =&gt; {\n  const navigation = useNavigation();\n\n  const goToSettings = () =&gt; {\n    navigation.navigate('Settings');\n  }\n\n  return (\n    &lt;Button title=\"Go to settings\" onPress={goToSettings} \/&gt;\n  );\n}\n\nexport default HomeScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001useNavigation \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3057\u3001goToSettings \u95a2\u6570\u306e navigation.navigate \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u8a2d\u5b9a\u30bf\u30b0\u306b\u5207\u308a\u66ff\u3048\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30ab\u30b9\u30bf\u30e0\u30e9\u30d9\u30eb\u30aa\u30d7\u30b7\u30e7\u30f3<\/li>\n<\/ol>\n\n\n\n<p>TabNavigator \u3067\u306f\u3001options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30e9\u30d9\u30eb\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 \u30bf\u30a4\u30c8\u30eb\u3001\u30a2\u30a4\u30b3\u30f3\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst HomeScreen = () =&gt; {\n  const navigation = useNavigation();\n\n  navigation.setOptions({\n    title: 'Home Screen',\n    tabBarIcon: ({ color, size }) =&gt; (\n      &lt;Icon name=\"home\" color={color}\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>size={size} \/&gt; ), });<\/p>\n\n\n\n<p>const goToSettings = () =&gt; { navigation.navigate(&#8216;Settings&#8217;); }<\/p>\n\n\n\n<p>return ( &lt;\u30dc\u30bf\u30f3\u30bf\u30a4\u30c8\u30eb=&#8221;\u8a2d\u5b9a\u306b\u79fb\u52d5&#8221; onPress={goToSettings} \/&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30db\u30fc\u30e0\u753b\u9762\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528navigation.setOptions\u65b9\u6cd5\u6765\u8bbe\u7f6eHome\u6807\u7b7e\u7684\u5bfc\u822a\u9009\u9879\u3002\u53ef\u4ee5\u8bbe\u7f6e\u6807\u9898\u4e3a'Home Screen'\uff0c\u8bbe\u7f6e\u6807\u7b7e\u56fe\u6807\u4e3ahome\u56fe\u6807\uff0c\u4f7f\u7528tabBarIcon\u5c5e\u6027\u548cIcon\u7ec4\u4ef6\u6765\u8bbe\u7f6e\u56fe\u6807\u3002\n\n\u5728goToSettings\u51fd\u6570\u4e2d\uff0c\u4f7f\u7528navigation.navigate\u65b9\u6cd5\u6765\u5207\u6362\u5230Settings\u6807\u7b7e\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0c\u4f7f\u7528React Navigation\u521b\u5efaTabNavigator\u53ef\u4ee5\u5b9e\u73b0\u6807\u7b7e\u5bfc\u822a\uff0c\u5e76\u53ef\u4ee5\u5728\u4e0d\u540c\u7684\u6807\u7b7e\u4e4b\u95f4\u8fdb\u884c\u5207\u6362\u3002\u53ef\u4ee5\u4f7f\u7528createBottomTabNavigator\u51fd\u6570\u521b\u5efaTabNavigator\uff0c\u5e76\u4f7f\u7528Tab.Screen\u7ec4\u4ef6\u6765\u5b9a\u4e49\u6807\u7b7e\u3002\u53ef\u4ee5\u5728\u7ec4\u4ef6\u4e2d\u4f7f\u7528useNavigation\u94a9\u5b50\u6765\u83b7\u53d6navigation\u5bf9\u8c61\uff0c\u5e76\u4f7f\u7528navigation.navigate\u65b9\u6cd5\u6765\u5207\u6362\u6807\u7b7e\u3002\u8fd8\u53ef\u4ee5\u4f7f\u7528options\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u6807\u7b7e\u7684\u5bfc\u822a\u9009\u9879\uff0c\u4f8b\u5982\u6807\u9898\u3001\u56fe\u6807\u548c\u4e8b\u4ef6\u5904\u7406\u51fd\u6570\u7b49\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 React\u30cd\u30a4\u30c6\u30a3\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306f\u30c9\u30ed\u30ef\u30fc\u3092\u4f5c\u6210\u3057\u307e\u3059\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3055\u307e\u3056\u307e\u306a\u30bf\u30a4\u30d7\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u305d\u306e\u4e2d\u3067\u3001DrawerNavigator\u306f\u3001\u30b5\u30a4\u30c9\u30d0\u30fc\u306b\u30e1\u30cb\u30e5\u30fc\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8868\u793a\u3057\u305f\u308a\u3001\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u3092\u30b9\u30e9\u30a4\u30c9\u3055\u305b\u305f\u308a\u30dc\u30bf\u30f3\u3092\u30bf\u30c3\u30d7\u3057\u305f\u308a\u3057\u3066\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u958b\u9589\u3067\u304d\u308b\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306e\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3067\u3059\u3002<\/p>\n\n\n\n<p>React\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001React Navigation\u3068\u305d\u308c\u306b\u95a2\u9023\u3059\u308b\u4f9d\u5b58\u95a2\u4fc2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u3092\u958b\u304d\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>npm install @react-navigation\/native @react-navigation\/drawer\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u306b React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306e\u30b3\u30a2\u4f9d\u5b58\u95a2\u4fc2\u304c\u542b\u307e\u308c\u3001@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30c9\u30ed\u30ef\u30fc\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e API \u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u63d0\u4f9b\u3059\u308b@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30cd\u30a4\u30c6\u30a3\u30d6\u304a\u3088\u3073@react\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30c9\u30ed\u30ef\u30fc\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a8\u30f3\u30c8\u30ea \u30d5\u30a1\u30a4\u30eb\u3067\u3001\u30c9\u30ed\u30ef\u30fc \u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u95a2\u6570\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { NavigationContainer } from '@react-navigation\/native';\nimport { createDrawerNavigator } from '@react-navigation\/drawer';\nimport HomeScreen from '.\/HomeScreen';\nimport SettingsScreen from '.\/SettingsScreen';\n\nconst Drawer = createDrawerNavigator();\n\nconst App = () =&gt; {\n  return (\n    &lt;NavigationContainer&gt;\n      &lt;Drawer.Navigator&gt;\n        &lt;Drawer.Screen name=\"Home\" component={HomeScreen} \/&gt;\n        &lt;Drawer.Screen name=\"Settings\" component={SettingsScreen} \/&gt;\n      &lt;\/Drawer.Navigator&gt;\n    &lt;\/NavigationContainer&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001DrawerNavigator \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066 DrawerNavigator \u304c\u4f5c\u6210\u3055\u308c\u3001NavigationContainer \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30c9\u30ed\u30ef\u30fc\u30ca\u30d3\u30b2\u30fc\u30bf\u30fc\u306b\u306f\u3001[\u30db\u30fc\u30e0] \u3068 [\u8a2d\u5b9a] \u306e 2 \u3064\u306e\u30e1\u30cb\u30e5\u30fc \u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u3042\u308a\u307e\u3059\u3002 Drawer.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u3053\u308c\u3089\u306e\u30e1\u30cb\u30e5\u30fc\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>Drawer.Screen \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001name \u5c5e\u6027\u3092\u4f7f\u7528\u3057\u3066\u30e1\u30cb\u30e5\u30fc\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u540d\u524d\u3092\u8a2d\u5b9a\u3057\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u305d\u306e\u30e1\u30cb\u30e5\u30fc\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u305d\u306e\u30e1\u30cb\u30e5\u30fc \u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d7\u30b7\u30e7\u30f3 (\u30bf\u30a4\u30c8\u30eb\u3001\u30a2\u30a4\u30b3\u30f3\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069) \u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b5\u30a4\u30c9\u30d0\u30fc\u306e\u30aa\u30f3\u3068\u30aa\u30d5\u3092\u5207\u308a\u66ff\u3048\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u4ed6\u306e\u90e8\u5206\u3067\u306f\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30a4\u30c9\u30d0\u30fc\u306e\u30aa\u30f3\u3068\u30aa\u30d5\u3092\u5207\u308a\u66ff\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067 useNavigation \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst HomeScreen = () =&gt; {\n  const navigation = useNavigation();\n\n  const openDrawer = () =&gt; {\n    navigation.openDrawer();\n  }\n\n  return (\n    &lt;Button title=\"Open drawer\" onPress={openDrawer} \/&gt;\n  );\n}\n\nexport default HomeScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001useNavigation \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3057\u3001openDrawer \u95a2\u6570\u306e navigation.openDrawer \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u958b\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30b5\u30a4\u30c9\u30d0\u30fc\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30ab\u30b9\u30bf\u30de\u30a4\u30ba<\/li>\n<\/ol>\n\n\n\n<p>\u3067\u306f\u3001drawerContent \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30a4\u30c9\u30d0\u30fc\u306e\u5185\u5bb9\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 DrawerContentScrollView \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 DrawerItemList \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306a\u30ab\u30b9\u30bf\u30e0\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { DrawerContentScrollView, DrawerItemList,\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u5f15\u304d\u51fa\u3057\u30a2\u30a4\u30c6\u30e0 } &#8216;@react-\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\/\u30c9\u30ed\u30ef\u30fc&#8217;\u304b\u3089;<\/p>\n\n\n\n<p>const CustomDrawerContent = (props) =&gt; { return ( &lt;DrawerContentScrollView {&#8230;props}&gt; &lt;DrawerItemList {&#8230;props} \/&gt; &lt;DrawerItem label=&#8221;Logout&#8221; onPress={() =&gt; { \/\/ TODO: logout user }} \/&gt; &lt;\/DrawerContentScrollView&gt; );}<\/p>\n\n\n\n<p>const App = () =&gt; { return ( &lt;NavigationContainer&gt; &lt;Drawer.Navigator drawerContent={props =&gt; &lt;CustomDrawerContent {&#8230;props} \/&gt;}&gt; &lt;Drawer.Screen name=&#8221;Home&#8221; component={HomeScreen} \/&gt; &lt;Drawer.Screen name=&#8221;Settings&#8221; component={SettingsScreen} \/&gt; &lt;\/Drawer.Navigator&gt; &lt;\/NavigationContainer&gt; );}<\/p>\n\n\n\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30d7\u30ea\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>\n\u5728\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c\u5b9a\u4e49\u4e00\u4e2a\u540d\u4e3aCustomDrawerContent\u7684\u7ec4\u4ef6\u6765\u521b\u5efa\u81ea\u5b9a\u4e49\u7684\u4fa7\u8fb9\u680f\u3002\u8be5\u7ec4\u4ef6\u5305\u542b\u4e00\u4e2aDrawerContentScrollView\u7ec4\u4ef6\u548c\u4e00\u4e2aDrawerItemList\u7ec4\u4ef6\uff0c\u7528\u4e8e\u5c55\u793a\u6807\u51c6\u7684\u4fa7\u8fb9\u680f\u83dc\u5355\u9009\u9879\u3002\u6b64\u5916\uff0c\u8fd8\u6dfb\u52a0\u4e86\u4e00\u4e2aDrawerItem\u7ec4\u4ef6\uff0c\u7528\u4e8e\u6dfb\u52a0\u81ea\u5b9a\u4e49\u7684\u83dc\u5355\u9009\u9879\u3002\n\n\u5728Drawer.Navigator\u7ec4\u4ef6\u4e2d\uff0c\u4f7f\u7528drawerContent\u5c5e\u6027\u6765\u6307\u5b9a\u81ea\u5b9a\u4e49\u7684\u4fa7\u8fb9\u680f\u5185\u5bb9\uff0c\u4f7f\u7528CustomDrawerContent\u7ec4\u4ef6\u6765\u521b\u5efa\u81ea\u5b9a\u4e49\u7684\u4fa7\u8fb9\u680f\u3002\n\n\u7efc\u4e0a\u6240\u8ff0\uff0c\u4f7f\u7528React Navigation\u521b\u5efaDrawerNavigator\u53ef\u4ee5\u5b9e\u73b0\u62bd\u5c49\u5f0f\u5bfc\u822a\uff0c\u5e76\u53ef\u4ee5\u5728\u4fa7\u8fb9\u680f\u4e2d\u5c55\u793a\u83dc\u5355\u9009\u9879\uff0c\u901a\u8fc7\u6ed1\u52a8\u624b\u52bf\u6216\u70b9\u51fb\u6309\u94ae\u6253\u5f00\u548c\u5173\u95ed\u4fa7\u8fb9\u680f\u3002\u53ef\u4ee5\u4f7f\u7528createDrawerNavigator\u51fd\u6570\u521b\u5efaDrawerNavigator\uff0c\u5e76\u4f7f\u7528Drawer.Screen\u7ec4\u4ef6\u6765\u5b9a\u4e49\u83dc\u5355\u9009\u9879\u3002\u53ef\u4ee5\u5728\u7ec4\u4ef6\u4e2d\u4f7f\u7528useNavigation\u94a9\u5b50\u6765\u83b7\u53d6navigation\u5bf9\u8c61\uff0c\u5e76\u4f7f\u7528navigation.openDrawer\u548cnavigation.closeDrawer\u65b9\u6cd5\u6765\u6253\u5f00\u548c\u5173\u95ed\u4fa7\u8fb9\u680f\u3002\u8fd8\u53ef\u4ee5\u4f7f\u7528drawerContent\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u4fa7\u8fb9\u680f\u7684\u5185\u5bb9\uff0c\u4f8b\u5982\u6dfb\u52a0\u81ea\u5b9a\u4e49\u7684\u83dc\u5355\u9009\u9879\u3002\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u6e21\u3057\u3068\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u8a2d\u5b9aChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Navigation\u3067\u306f\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4ecb\u3057\u3066\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6e21\u3059\u3053\u3068\u3067\u3001\u7570\u306a\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u306e\u30c7\u30fc\u30bf\u64cd\u4f5c\u3092\u5b9f\u73fe\u3067\u304d\u307e\u3059\u3002 navigation.navigate \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6e21\u3057\u3001route.params \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4ee5\u4e0b\u306f\u3001React\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6e21\u3059\u4f8b\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30bd\u30fc\u30b9\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6e21\u3059<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Button } from 'react-native';\nimport { useNavigation } from '@react-navigation\/native';\n\nconst HomeScreen = () =&gt; {\n  const navigation = useNavigation();\n\n  const goToDetails = () =&gt; {\n    navigation.navigate('Details', { itemId: 123, itemName: 'Example Item' });\n  }\n\n  return (\n    &lt;Button title=\"Go to details\" onPress={goToDetails} \/&gt;\n  );\n}\n\nexport default HomeScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001navigation.navigate \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001&#8217;Details&#8217; \u3068\u3044\u3046\u540d\u524d\u306e\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6e21\u3057\u307e\u3059\u3002 \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306b\u306f\u3001itemId \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 itemName \u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u542b\u307e\u308c\u3001\u5024\u306f\u305d\u308c\u305e\u308c 123 \u3068 &#8216;\u30b5\u30f3\u30d7\u30eb\u9805\u76ee&#8217; \u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u3078\u306e\u30a2\u30af\u30bb\u30b9<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text } from 'react-native';\n\nconst DetailsScreen = ({ route }) =&gt; {\n  const { itemId, itemName } = route.params;\n\n  return (\n    &lt;Text&gt;{`Item ID: ${itemId}, Item Name: ${itemName}`}&lt;\/Text&gt;\n  );\n}\n\nexport default DetailsScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001itemId \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 itemName \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u306f\u3001\u5272\u308a\u5f53\u3066\u3092\u7834\u68c4\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066 route.params \u304b\u3089\u53d6\u5f97\u3055\u308c\u3001\u3053\u308c\u3089\u306e\u5024\u306f &lt;Text &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u8868\u3059\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u5358\u7d14\u306a\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6e21\u3059\u3060\u3051\u3067\u306a\u304f\u3001route.params \u3092\u4ecb\u3057\u3066\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3084\u95a2\u6570\u306a\u3069\u306e\u578b\u306e\u30c7\u30fc\u30bf\u3092\u6e21\u3059\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3055\u3089\u306b\u3001React Navigation\u3067\u306f\u3001\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3057\u3066\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u306e\u52d5\u4f5c\u3068\u5916\u89b3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30a2\u30a4\u30b3\u30f3\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u6b21\u306b\u3001options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3059\u308b\u65b9\u6cd5\u306e\u4f8b\u3092\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text } from 'react-native';\n\nconst HomeScreen = ({ navigation }) =&gt; {\n  return (\n    &lt;Text&gt;Home Screen&lt;\/Text&gt;\n  );\n}\n\nHomeScreen.navigationOptions = ({ navigation }) =&gt; ({\n  title: 'Home',\n  headerStyle: {\n    backgroundColor: '#f4511e',\n  },\n  headerTintColor: '#fff',\n});\n\nexport default HomeScreen;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d7\u30b7\u30e7\u30f3\u306f HomeScreen.navigationOptions \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u8a2d\u5b9a\u3055\u308c\u307e\u3059\u3002 \u30bf\u30a4\u30c8\u30eb\u3092\u300c\u30db\u30fc\u30e0\u300d\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30d0\u30fc\u30b9\u30bf\u30a4\u30eb\u306e\u80cc\u666f\u8272\u3092\u300c#f4511e\u300d\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30d0\u30fc\u306e\u30c6\u30ad\u30b9\u30c8\u306e\u8272\u3092\u300c#fff\u300d\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001\u7570\u306a\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u306e\u30c7\u30fc\u30bf\u76f8\u4e92\u4f5c\u7528\u306f\u3001React \u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6e21\u3059\u3053\u3068\u306b\u3088\u3063\u3066\u5b9f\u73fe\u3067\u304d\u3001\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306f navigation.navigate \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u6e21\u3059\u3053\u3068\u304c\u3067\u304d\u3001\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306f route.params \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30bf\u30fc\u30b2\u30c3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002 options \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u30a2\u30a4\u30b3\u30f3\u3001\u30b9\u30bf\u30a4\u30eb\u3001\u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u306a\u3069\u306e\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u72b6\u614b\u7ba1\u7406\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u72b6\u614bChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native\u3067\u306f\u3001\u72b6\u614b\u7ba1\u7406\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u52b9\u679c\u7684\u306b\u6574\u7406\u304a\u3088\u3073\u7ba1\u7406\u3057\u3001\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306a\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u5b9f\u88c5\u3059\u308b\u306e\u306b\u5f79\u7acb\u3064\u975e\u5e38\u306b\u91cd\u8981\u306a\u30bf\u30b9\u30af\u3067\u3059\u3002<\/p>\n\n\n\n<p>React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u72b6\u614b\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u304a\u3088\u3073\u7dad\u6301\u3059\u308b\u30c7\u30fc\u30bf\u69cb\u9020\u3067\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u72b6\u614b\u306f\u901a\u5e38\u3001\u53cd\u5fdc\u30d5\u30c3\u30af\u306euseState()\u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u5b9f\u73fe\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>useState() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u72b6\u614b\u3092\u4f5c\u6210\u3059\u308b\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { Text, Button } from 'react-native';\n\nconst Counter = () =&gt; {\n  const [count, setCount] = useState(0);\n\n  const increment = () =&gt; {\n    setCount(count + 1);\n  }\n\n  const decrement = () =&gt; {\n    setCount(count - 1);\n  }\n\n  return (\n    &lt;&gt;\n      &lt;Text&gt;Count: {count}&lt;\/Text&gt;\n      &lt;Button title=\"+\" onPress={increment} \/&gt;\n      &lt;Button title=\"-\" onPress={decrement} \/&gt;\n    &lt;\/&gt;\n  );\n}\n\nexport default Counter;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001useState() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001\u521d\u671f\u5024\u304c 0 \u306e count \u3068\u3044\u3046\u72b6\u614b\u5909\u6570\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 useState() \u30d5\u30c3\u30af\u306f\u3001\u73fe\u5728\u306e\u72b6\u614b\u5024\u3068\u72b6\u614b\u5024\u3092\u66f4\u65b0\u3059\u308b\u95a2\u6570\u3092\u542b\u3080\u914d\u5217\u3092\u8fd4\u3057\u307e\u3059\u3002 \u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3068\u30c7\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3067\u306f\u3001setCount \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30a6\u30f3\u30c8\u72b6\u614b\u5909\u6570\u306e\u5024\u3092\u66f4\u65b0\u3057\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001&lt;Text &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 &lt;Button &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ab\u30a6\u30f3\u30c8\u95a2\u6570\u3068\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3068\u30c7\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30a6\u30f3\u30bf\u30fc\u3092\u8868\u793a\u3057\u3001\u52a0\u7b97\u3068\u6e1b\u7b97\u306e\u64cd\u4f5c\u3092\u5b9f\u88c5\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React\u72b6\u614b\u306f\u4e0d\u5909\u3067\u3042\u308b\u305f\u3081\u3001\u72b6\u614b\u5909\u6570\u30ab\u30a6\u30f3\u30c8\u306e\u5024\u306f\u66f4\u65b0\u72b6\u614b\u95a2\u6570setCount\u3092\u4f7f\u7528\u3057\u3066\u66f4\u65b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<p>useState() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u72b6\u614b\u5909\u6570\u3092\u4f5c\u6210\u3059\u308b\u3060\u3051\u3067\u306a\u304f\u3001useReducer() \u30d5\u30c3\u30af\u3084 Redux \u306a\u3069\u306e\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u306e\u72b6\u614b\u7ba1\u7406\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3001\u3088\u308a\u8907\u96d1\u306a\u72b6\u614b\u7ba1\u7406\u3092\u5b9f\u88c5\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001useState() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u72b6\u614b\u3092\u7c21\u5358\u306b\u4f5c\u6210\u3057\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u304a\u3088\u3073\u7ba1\u7406\u3067\u304d\u307e\u3059\u3002 \u72b6\u614b\u5909\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306b\u3057\u3001\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u3067\u66f4\u65b0\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8APIChatGPT\u3092\u4f7f\u7528\u3057\u305f\u30cd\u30a4\u30c6\u30a3\u30d6\u72b6\u614b\u7ba1\u7406\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 API \u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u3067\u30c7\u30fc\u30bf\u3092\u5171\u6709\u3059\u308b\u65b9\u6cd5\u3067\u3059\u3002 \u3053\u308c\u306b\u3088\u308a\u3001\u5404\u30ec\u30a4\u30e4\u30fc\u306b\u624b\u52d5\u3067\u30c7\u30fc\u30bf\u3092\u6e21\u3059\u3053\u3068\u306a\u304f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u4efb\u610f\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u95a2\u6570\u3092\u6e21\u3059\u3053\u3068\u304c\u3067\u304d\u308b\u305f\u3081\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u306e\u30c7\u30fc\u30bf\u8ee2\u9001\u304c\u5bb9\u6613\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>React \u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 API \u3092\u4f7f\u7528\u3057\u3066\u72b6\u614b\u7ba1\u7406\u3092\u4f5c\u6210\u3059\u308b\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u65b0\u3057\u3044\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\n\nconst AppContext = React.createContext();\n\nexport default AppContext;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001createContext() \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u65b0\u3057\u3044\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u3053\u306e Context \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30c7\u30fc\u30bf\u3092\u6e21\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306e\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u306e\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useContext } from 'react';\nimport { Text } from 'react-native';\nimport AppContext from '.\/AppContext';\n\nconst Counter = () =&gt; {\n  const { count, setCount } = useContext(AppContext);\n\n  const increment = () =&gt; {\n    setCount(count + 1);\n  }\n\n  const decrement = () =&gt; {\n    setCount(count - 1);\n  }\n\n  return (\n    &lt;&gt;\n      &lt;Text&gt;Count: {count}&lt;\/Text&gt;\n      &lt;Button title=\"+\" onPress={increment} \/&gt;\n      &lt;Button title=\"-\" onPress={decrement} \/&gt;\n    &lt;\/&gt;\n  );\n}\n\nexport default Counter;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001useContext() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066 Context \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30fc\u30bf\u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002 AppContext \u3092 useContext() \u30d5\u30c3\u30af\u306b\u6e21\u3057\u3066\u3001count \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 setCount \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 \u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3068\u30c7\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3067\u306f\u3001setCount \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30a6\u30f3\u30c8 \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u3092\u66f4\u65b0\u3057\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001&lt;Text &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 &lt;Button &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ab\u30a6\u30f3\u30c8\u95a2\u6570\u3068\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3068\u30c7\u30af\u30ea\u30e1\u30f3\u30c8\u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30a6\u30f3\u30bf\u30fc\u3092\u8868\u793a\u3057\u3001\u52a0\u7b97\u3068\u6e1b\u7b97\u306e\u64cd\u4f5c\u3092\u5b9f\u88c5\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>Context API \u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u5185\u306e\u30c7\u30fc\u30bf\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e0a\u306b Context \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30e9\u30c3\u30d7\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 API \u3092\u4f7f\u7528\u3059\u308b\u65b9\u6cd5\u306e\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { View } from 'react-native';\nimport AppContext from '.\/AppContext';\nimport Counter from '.\/Counter';\n\nconst App = () =&gt; {\n  const [count, setCount] = useState(0);\n\n  return (\n    &lt;AppContext.Provider value={{ count, setCount }}&gt;\n      &lt;View&gt;\n        &lt;Counter \/&gt;\n      &lt;\/View&gt;\n    &lt;\/AppContext.Provider&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001AppContext.Provider \u306f\u30eb\u30fc\u30c8 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u30e9\u30c3\u30d7\u3055\u308c\u3001count \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 setCount \u30d7\u30ed\u30d1\u30c6\u30a3\u304c AppContext.Provider \u306b\u6e21\u3055\u308c\u307e\u3059\u3002 &lt;App&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 &lt;AppContext.Provider &gt;\u3067\u30e9\u30c3\u30d7\u3057\u3066\u3001&lt;App&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 &lt;\u30ab\u30a6\u30f3\u30bf\u30fc&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u5185\u306e\u30c7\u30fc\u30bf\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Context API \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u9593\u306e\u30c7\u30fc\u30bf\u5171\u6709\u304c\u53ef\u80fd\u306b\u306a\u308a\u3001\u72b6\u614b\u7ba1\u7406\u306e\u30d7\u30ed\u30bb\u30b9\u304c\u7c21\u7d20\u5316\u3055\u308c\u307e\u3059\u3002 createContext() \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u65b0\u3057\u3044\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u3001useContext() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u5185\u306e\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30fc\u30bf\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e0a\u306b Context \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30e9\u30c3\u30d7\u3057\u3066\u3001Context \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u4ee5\u4e0b\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u4f7f\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u72b6\u614b\u7ba1\u7406\u304cReduxChatGPT\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>Redux\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u3059\u3079\u3066\u306e\u72b6\u614b\u3092\u7ba1\u7406\u3059\u308b\u4e88\u6e2c\u53ef\u80fd\u306a\u72b6\u614b\u30b3\u30f3\u30c6\u30ca\u3067\u3059\u3002 \u3053\u308c\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u72b6\u614b\u3092\u3088\u308a\u9069\u5207\u306b\u6574\u7406\u304a\u3088\u3073\u7ba1\u7406\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u72b6\u614b\u3092\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u304b\u3089\u5207\u308a\u96e2\u3059\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002 Redux\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30c7\u30fc\u30bf\u306e\u4fdd\u5b58\u3068\u66f4\u65b0\u3092\u5bb9\u6613\u306b\u3059\u308b\u4e00\u5143\u5316\u3055\u308c\u305f\u72b6\u614b\u7ba1\u7406\u30b9\u30ad\u30fc\u30e0\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4ee5\u4e0b\u306f\u3001\u72b6\u614b\u7ba1\u7406\u306bRedux\u3092\u4f7f\u7528\u3059\u308b\u4f8b\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Redux\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">cssCopy code<code>npm install redux react-redux --save\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Redux\u30b9\u30c8\u30a2\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import { createStore } from 'redux';\nimport rootReducer from '.\/reducers';\n\nconst store = createStore(rootReducer);\n\nexport default store;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001createStore() \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066 Redux \u30b9\u30c8\u30a2\u3092\u4f5c\u6210\u3057\u3001rootReduce \u3092\u5f15\u6570\u3068\u3057\u3066 createStore() \u95a2\u6570\u306b\u6e21\u3057\u307e\u3059\u3002 rootReduce \u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5185\u306e\u8907\u6570\u306e\u72b6\u614b\u3092\u51e6\u7406\u3067\u304d\u308b\u8907\u6570\u306e\u30ec\u30c7\u30e5\u30fc\u30b5\u30fc\u3092\u542b\u3080\u95a2\u6570\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ec\u30b8\u30e5\u30fc\u30b5\u30fc\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>const initialState = {\n  count: 0,\n};\n\nconst counterReducer = (state = initialState, action) =&gt; {\n  switch (action.type) {\n    case 'INCREMENT':\n      return { ...state, count: state.count + 1 };\n    case 'DECREMENT':\n      return { ...state, count: state.count - 1 };\n    default:\n      return state;\n  }\n};\n\nexport default counterReducer;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u73fe\u5728\u306e\u72b6\u614b\u3068\u30a2\u30af\u30b7\u30e7\u30f3\u306e 2 \u3064\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u53d7\u3051\u5165\u308c\u308b counterReduce \u3068\u3044\u3046\u30ec\u30c7\u30e5\u30fc\u30b5\u30fc\u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 switch \u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3067\u306f\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u306e\u30bf\u30a4\u30d7\u306b\u5fdc\u3058\u3066\u72b6\u614b\u304c\u66f4\u65b0\u3055\u308c\u307e\u3059\u3002 \u3053\u306e\u4f8b\u3067\u306f\u3001action.type \u304c &#8216;INCREMENT&#8217; \u306e\u5834\u5408\u306f\u30ab\u30a6\u30f3\u30bf\u30fc\u306e\u5024\u3092\u5897\u3084\u3057\u3001action.type \u304c &#8216;DECREMENT&#8217; \u306e\u5834\u5408\u306f\u30ab\u30a6\u30f3\u30bf\u30fc\u306e\u5024\u3092\u5c0f\u3055\u304f\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a2\u30af\u30b7\u30e7\u30f3\u306e\u4f5c\u6210<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>export const increment = () =&gt; ({\n  type: 'INCREMENT',\n});\n\nexport const decrement = () =&gt; ({\n  type: 'DECREMENT',\n});\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001increment \u3068 decrement \u3068\u3044\u3046\u540d\u524d\u306e 2 \u3064\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u3001\u305d\u308c\u305e\u308c\u304c\u5b9f\u884c\u3059\u308b\u64cd\u4f5c\u306e\u7a2e\u985e\u3092\u793a\u3059 type \u5c5e\u6027\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>Redux\u30b9\u30c8\u30a2\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { Text, Button } from 'react-native';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { increment, decrement } from '.\/actions';\n\nconst Counter = () =&gt; {\n  const count = useSelector(state =&gt; state.count);\n  const dispatch = useDispatch();\n\n  const incrementCount = () =&gt; {\n    dispatch(increment());\n  }\n\n  const decrementCount = () =&gt; {\n    dispatch(decrement());\n  }\n\n  return (\n    &lt;&gt;\n      &lt;Text&gt;Count: {count}&lt;\/Text&gt;\n      &lt;Button title=\"+\" onPress={incrementCount} \/&gt;\n      &lt;Button title=\"-\" onPress={decrementCount} \/&gt;\n    &lt;\/&gt;\n  );\n}\n\nexport default Counter;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001useSelector() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066 Redux \u30b9\u30c8\u30a2\u306e\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u53d6\u5f97\u3057\u3001useDispatch() \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30a3\u30b9\u30d1\u30c3\u30c1\u95a2\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 incrementCount \u95a2\u6570\u3068 decrementCount \u95a2\u6570\u3067\u3001dispatch() \u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3001increment() \u30a2\u30af\u30b7\u30e7\u30f3\u95a2\u6570\u3068 decrement() \u30a2\u30af\u30b7\u30e7\u30f3\u95a2\u6570\u3092\u5f15\u6570\u3068\u3057\u3066 dispatch() \u95a2\u6570\u306b\u6e21\u3057\u3066\u72b6\u614b\u3092\u66f4\u65b0\u3057\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001&lt;\u30c6\u30ad\u30b9\u30c8 &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 &lt;\u30dc\u30bf\u30f3 &gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e count \u95a2\u6570\u3068 incrementCount\u3001decrementCount \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30a6\u30f3\u30bf\u30fc\u3092\u8868\u793a\u3057\u3001\u52a0\u7b97\u3068\u6e1b\u7b97\u306e\u64cd\u4f5c\u3092\u5b9f\u88c5\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>Redux\u3067\u306f\u3001\u72b6\u614b\u306f\u4e0d\u5909\u3067\u3042\u308a\u3001\u66f4\u65b0\u30b9\u30c6\u30fc\u30bf\u30b9\u6a5f\u80fd\u3092\u4f7f\u7528\u3057\u3066\u66f4\u65b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 \u3055\u3089\u306b\u3001Redux\u3092\u4f7f\u7528\u3057\u305f\u72b6\u614b\u7ba1\u7406\u306b\u306f\u3001\u30ec\u30c7\u30e5\u30fc\u30b5\u30fc\u3068\u30a2\u30af\u30b7\u30e7\u30f3\u306e\u7d44\u307f\u5408\u308f\u305b\u304c\u5fc5\u8981\u3067\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u53cd\u5fdc\u3055\u305b\u308b \u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb ChatGPT\u306e\u6982\u8981<\/p>\n\n\n\n<p>React Native \u306f\u3001JavaScript \u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8ad6\u7406\u90e8\u5206\u3092\u8a18\u8ff0\u3059\u308b JavaScript \u30d9\u30fc\u30b9\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3059\u3002 \u305f\u3060\u3057\u3001React Native\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3068\u306e\u5bfe\u8a71\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u7279\u5b9a\u306e\u90e8\u5206\u3092\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3067\u8a18\u8ff0\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native \u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u3001\u7279\u5b9a\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u95a2\u6570\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306b\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3067\u8a18\u8ff0\u3055\u308c\u305f JavaScript \u30e2\u30b8\u30e5\u30fc\u30eb\u3067\u3059\u3002 \u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u3068\u3001\u30c7\u30d0\u30a4\u30b9\u4e0a\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u3084\u305d\u306e\u4ed6\u306e\u6a5f\u80fd (\u30b8\u30aa\u30ed\u30b1\u30fc\u30b7\u30e7\u30f3\u3001\u30d5\u30a1\u30a4\u30eb \u30b7\u30b9\u30c6\u30e0\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306a\u3069) \u3078\u306e\u30a2\u30af\u30bb\u30b9\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u975e\u540c\u671f\u30b9\u30c8\u30ec\u30fc\u30b8: \u30c7\u30fc\u30bf\u3092\u30ed\u30fc\u30ab\u30eb\u306b\u4fdd\u5b58\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30ab\u30e1\u30e9\u30ed\u30fc\u30eb:\u30c7\u30d0\u30a4\u30b9\u306e\u30a2\u30eb\u30d0\u30e0\u304b\u3089\u5199\u771f\u3092\u53d6\u5f97\u3057\u3066\u4fdd\u5b58\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9: \u30c6\u30ad\u30b9\u30c8\u306e\u30b3\u30d4\u30fc\u3068\u8cbc\u308a\u4ed8\u3051\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u4f4d\u7f6e\u60c5\u5831: \u30c7\u30d0\u30a4\u30b9\u306e\u5730\u7406\u7684\u4f4d\u7f6e\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>NetInfo: \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u63a5\u7d9a\u306e\u72b6\u614b\u3092\u691c\u51fa\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<p>React Native \u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u8981\u7d20\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u3067\u8a18\u8ff0\u3055\u308c\u305f UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u53c2\u7167\u3057\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306eUI\u30c4\u30fc\u30eb\u30ad\u30c3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u305f\u3081\u3001\u3088\u308a\u9ad8\u3044\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u3088\u308a\u826f\u3044\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5f97\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e00\u90e8\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d3\u30e5\u30fc: \u57fa\u672c\u7684\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u8981\u7d20\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c6\u30ad\u30b9\u30c8: \u30c6\u30ad\u30b9\u30c8\u8981\u7d20\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u753b\u50cf: \u753b\u50cf\u8981\u7d20\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c6\u30ad\u30b9\u30c8\u5165\u529b: \u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30dc\u30c3\u30af\u30b9\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc: \u30b9\u30af\u30ed\u30fc\u30eb\u53ef\u80fd\u306a\u30d3\u30e5\u30fc\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8: \u9577\u3044\u30ea\u30b9\u30c8\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<p>React Native\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u6a5f\u80fd\u3068UI\u8981\u7d20\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30ebChatGPT\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306eReact\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3057\u3001JavaScript \u3092\u4ecb\u3057\u3066\u547c\u3073\u51fa\u3057\u3066\u4f7f\u7528\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React\u30cd\u30a4\u30c6\u30a3\u30d6\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f5c\u6210\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u65b0\u3057\u3044\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb \u30af\u30e9\u30b9\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>package com.example;\n\nimport com.facebook.react.bridge.ReactApplicationContext;\nimport com.facebook.react.bridge.ReactContextBaseJavaModule;\nimport com.facebook.react.bridge.ReactMethod;\n\npublic class ExampleModule extends ReactContextBaseJavaModule {\n    public ExampleModule(ReactApplicationContext reactContext) {\n        super(reactContext);\n    }\n\n    @Override\n    public String getName() {\n        return \"ExampleModule\";\n    }\n\n    @ReactMethod\n    public void exampleMethod() {\n        \/\/ Native code implementation\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001ExampleModule \u3068\u3044\u3046 Java \u30af\u30e9\u30b9\u304c\u4f5c\u6210\u3055\u308c\u3001ReactContextBaseJavaModule \u304b\u3089\u7d99\u627f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30af\u30e9\u30b9\u3067\u3001JavaScript \u3067\u547c\u3073\u51fa\u3059\u3053\u3068\u304c\u3067\u304d\u308b@ReactMethod\u6ce8\u91c8\u3092\u4f7f\u7528\u3057\u3066\u30ed\u30fc\u30ab\u30eb \u30e1\u30bd\u30c3\u30c9\u3092\u30de\u30fc\u30af\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3092 React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u767b\u9332\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import { NativeModules } from 'react-native';\n\nconst ExampleModule = NativeModules.ExampleModule;\n\nexport default ExampleModule;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u53d6\u5f97\u3057\u3001JavaScript \u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u3057\u3066\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002 ExampleModule.exampleMethod() \u30e1\u30bd\u30c3\u30c9\u3092 JavaScript \u3067\u547c\u3073\u51fa\u3057\u3066\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3067\u30cd\u30a4\u30c6\u30a3\u30d6\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u5b9f\u88c5\u306f\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u56fa\u6709\u3067\u3042\u308b\u305f\u3081\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306fiOS\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3068Android\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067\u5225\u3005\u306b\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 iOS\u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306fObjective-C\u307e\u305f\u306fSwift\u3067\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002 Android \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u306f Java \u307e\u305f\u306f Kotlin \u8a00\u8a9e\u3067\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u65b0\u3057\u3044\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30af\u30e9\u30b9\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>package com.example;\n\nimport android.content.Context;\nimport android.view.View;\n\npublic class ExampleView extends View {\n    public ExampleView(Context context) {\n        super(context);\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001ExampleView \u3068\u3044\u3046\u540d\u524d\u306e Android \u30d3\u30e5\u30fc \u30af\u30e9\u30b9\u304c\u4f5c\u6210\u3055\u308c\u3001\u30d3\u30e5\u30fc \u30af\u30e9\u30b9\u304b\u3089\u7d99\u627f\u3055\u308c\u307e\u3059\u3002 \u30af\u30e9\u30b9\u3067\u3001\u3044\u304f\u3064\u304b\u306e\u30ab\u30b9\u30bf\u30e0 UI \u8981\u7d20\u3092\u5b9f\u88c5\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { requireNativeComponent } from 'react-native';\n\nconst ExampleView = requireNativeComponent('ExampleView');\n\nconst App = () =&gt; {\n  return (\n    &lt;ExampleView \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001requireNativeComponent() \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 ExampleView \u3092 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u30e9\u30c3\u30d7\u3057\u3001JavaScript \u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u3057\u3066\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002 &lt;ExampleView&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30b9\u30bf\u30e0\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u8981\u7d20\u3092\u8868\u793a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b9f\u88c5\u3082\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u56fa\u6709\u3067\u3042\u308b\u305f\u3081\u3001\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306fiOS\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3068Android\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067\u5225\u3005\u306b\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 iOS \u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f Objective-C \u307e\u305f\u306f Swift \u3067\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002 Android \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f Java \u307e\u305f\u306f Kotlin \u8a00\u8a9e\u3092\u4f7f\u7528\u3057\u3066\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30ebChatGPT\u3092\u547c\u3073\u51fa\u3059\u3053\u3068\u3092\u8a73\u7d30\u306b\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u3001React Native \u306e\u7d44\u307f\u8fbc\u307f\u30e2\u30b8\u30e5\u30fc\u30eb NativeModule \u3092\u4f7f\u7528\u3057\u3066\u3001JavaScript \u30b3\u30fc\u30c9\u3092\u4ecb\u3057\u3066\u547c\u3073\u51fa\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u547c\u3073\u51fa\u3059\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u88c5\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>\/\/ ExampleModule.java\n\npublic class ExampleModule extends ReactContextBaseJavaModule {\n    \/\/ ...\n\n    @ReactMethod\n    public void exampleMethod(String arg1, int arg2, Promise promise) {\n        try {\n            \/\/ Native code implementation\n            String result = \"some result\";\n            promise.resolve(result);\n        } catch (Exception e) {\n            promise.reject(e);\n        }\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001exampleMethod \u3068\u3044\u3046\u540d\u524d\u306e\u30ed\u30fc\u30ab\u30eb \u30e1\u30bd\u30c3\u30c9\u304c\u4f5c\u6210\u3055\u308c\u3001@ReactMethod \u30b3\u30e1\u30f3\u30c8\u3067\u30de\u30fc\u30af\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3001\u6587\u5b57\u5217\u3068\u6574\u6570\u306e 2 \u3064\u306e\u5f15\u6570\u3092\u53d7\u3051\u53d6\u308a\u3001Promise \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>JavaScript \u30b3\u30fc\u30c9\u3067\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3059<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import { NativeModules } from 'react-native';\n\nconst { ExampleModule } = NativeModules;\n\nExampleModule.exampleMethod('some string', 123)\n  .then(result =&gt; {\n    console.log(result);\n  })\n  .catch(error =&gt; {\n    console.error(error);\n  });\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001NativeModules \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30cd\u30a4\u30c6\u30a3\u30d6 \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u53d6\u5f97\u3057\u3001exampleMethod() \u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u3066\u3001\u6587\u5b57\u5217\u3068\u6574\u6570\u306e 2 \u3064\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6e21\u3057\u307e\u3059\u3002 exampleMethod() \u30e1\u30bd\u30c3\u30c9\u306f Promise \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8fd4\u3057\u3001\u975e\u540c\u671f\u64cd\u4f5c\u306e\u7d50\u679c\u306f .then() \u30e1\u30bd\u30c3\u30c9\u3068 .catch() \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u51e6\u7406\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native \u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u5c0e\u5165\u3057\u3066\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u5b9f\u88c5\u3067\u304d\u307e\u3059\u3002 React Native\u306e\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3054\u3068\u306b\u5bfe\u5fdc\u3059\u308b\u30e9\u30c3\u30d1\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u751f\u6210\u3057\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002 \u3053\u306e\u30e9\u30c3\u30d1\u30fc \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u901a\u4fe1\u3059\u308b\u305f\u3081\u306e\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3068\u3057\u3066\u6a5f\u80fd\u3057\u3001\u3059\u3079\u3066\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u30a4\u30d9\u30f3\u30c8\u3092\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u6e21\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u547c\u3073\u51fa\u3059\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u3067\u306e\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b9f\u88c5<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>\/\/ ExampleView.java\n\npublic class ExampleView extends View {\n    \/\/ ...\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001ExampleView \u3068\u3044\u3046\u540d\u524d\u306e\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 \u30af\u30e9\u30b9\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 JavaScript \u30b3\u30fc\u30c9\u3067\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { requireNativeComponent } from 'react-native';\n\nconst ExampleView = requireNativeComponent('ExampleView');\n\nconst App = () =&gt; {\n  return (\n    &lt;ExampleView \/&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001requireNativeComponent() \u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 ExampleView \u3092 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u30e9\u30c3\u30d7\u3057\u3001JavaScript \u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u3057\u3066\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002 &lt;ExampleView&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30b9\u30bf\u30e0\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u8981\u7d20\u3092\u8868\u793a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u547c\u3073\u51fa\u3059\u3068\u304d\u306f\u3001&lt;\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u540d&gt;\u306e\u5f62\u5f0f\u3067React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u53c2\u7167\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 \u3055\u3089\u306b\u3001React Native \u306e\u7d44\u307f\u8fbc\u307f UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u306f\u3001JavaScript \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5bfe\u5fdc\u3059\u308b\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u81ea\u52d5\u7684\u306b\u5909\u63db\u3057\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304b\u3089\u30a4\u30d9\u30f3\u30c8\u3092\u53d7\u3051\u53d6\u308a\u307e\u3059\u3002 \u3053\u308c\u306b\u3088\u308a\u3001\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u64cd\u4f5c\u304c\u975e\u5e38\u306b\u30b7\u30f3\u30d7\u30eb\u3067\u67d4\u8edf\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u53cd\u5fdc\u3055\u305b\u308b ChatGPT\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u7d39\u4ecb<\/p>\n\n\n\n<p>React Native \u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e UI \u30c4\u30fc\u30eb\u30ad\u30c3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3067\u8a18\u8ff0\u3055\u308c\u305f UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 \u3053\u308c\u3089\u306e\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u4f7f\u7528\u3067\u304d\u3001\u3088\u308a\u9ad8\u3044\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4e00\u90e8\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u773a\u3081\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30d3\u30e5\u30fc\u306f\u3001\u4ed6\u306eUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30ec\u30a4\u30a2\u30a6\u30c8\u3059\u308b\u305f\u3081\u306e\u30b3\u30f3\u30c6\u30ca\u3092\u4f5c\u6210\u3059\u308bReact Native\u306e\u57fa\u672c\u7684\u306aUI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 View \u306b\u306f\u3001\u958b\u767a\u8005\u304c\u8907\u96d1\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u7c21\u5358\u306b\u4f5c\u6210\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u30b9\u30bf\u30a4\u30eb\u3068\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30c6\u30ad\u30b9\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u30c6\u30ad\u30b9\u30c8\u306f\u3001\u30c6\u30ad\u30b9\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306b\u4f7f\u7528\u3055\u308c\u308b\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 \u30c6\u30ad\u30b9\u30c8\u306f\u3001\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3001\u8272\u3001\u914d\u7f6e\u306a\u3069\u306e\u30c6\u30ad\u30b9\u30c8\u30b9\u30bf\u30a4\u30eb\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u753b\u50cf<\/li>\n<\/ol>\n\n\n\n<p>\u30a4\u30e1\u30fc\u30b8\u306f\u3001\u30a4\u30e1\u30fc\u30b8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306b\u4f7f\u7528\u3055\u308c\u308b\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 Image \u306f\u3001\u30ed\u30fc\u30ab\u30eb \u30d5\u30a1\u30a4\u30eb \u30b7\u30b9\u30c6\u30e0\u307e\u305f\u306f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u30a4\u30e1\u30fc\u30b8\u3092\u8aad\u307f\u8fbc\u3080\u3053\u3068\u304c\u3067\u304d\u3001\u30b5\u30a4\u30ba\u3001\u5883\u754c\u7dda\u3001\u900f\u660e\u5ea6\u306a\u3069\u306e\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30c6\u30ad\u30b9\u30c8\u5165\u529b<\/li>\n<\/ol>\n\n\n\n<p>TextInput \u306f\u3001\u30c6\u30ad\u30b9\u30c8\u5165\u529b\u30dc\u30c3\u30af\u30b9\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306b\u4f7f\u7528\u3055\u308c\u308b\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 TextInput \u306f\u3001\u30d5\u30a9\u30f3\u30c8 \u30b5\u30a4\u30ba\u3001\u5883\u754c\u7dda\u3001\u30d1\u30c7\u30a3\u30f3\u30b0\u306a\u3069\u306e\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u63d0\u4f9b\u3057\u3001\u5165\u529b\u306e\u691c\u8a3c\u3068\u30aa\u30fc\u30c8\u30b3\u30f3\u30d7\u30ea\u30fc\u30c8\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30b9\u30af\u30ed\u30fc\u30eb\u30d3\u30e5\u30fc<\/li>\n<\/ol>\n\n\n\n<p>\u306f\u3001\u30b9\u30af\u30ed\u30fc\u30eb\u53ef\u80fd\u306a\u30d3\u30e5\u30fc\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 ScrollView \u306f\u3001\u30d3\u30e5\u30fc\u5185\u306e\u4efb\u610f\u306e\u6570\u306e\u5b50\u8981\u7d20\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3067\u304d\u3001\u30b9\u30af\u30ed\u30fc\u30eb \u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u3068\u30da\u30fc\u30b8\u30f3\u30b0 \u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>\u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8<\/li>\n<\/ol>\n\n\n\n<p>FlatList \u306f\u3001\u9577\u3044\u30ea\u30b9\u30c8\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 FlatList \u306f\u3001\u4efb\u610f\u306e\u6570\u306e\u5b50\u8981\u7d20\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3067\u304d\u3001\u4eee\u60f3\u30b9\u30af\u30ed\u30fc\u30eb\u3001\u30da\u30fc\u30b8\u30f3\u30b0\u3001\u884c\u30ec\u30d9\u30eb\u306e\u66f4\u65b0\u5236\u5fa1\u306a\u3069\u306e\u6700\u9069\u5316\u6a5f\u80fd\u3092\u5099\u3048\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"7\">\n<li>\u30a6\u30a7\u30d6\u30d3\u30e5\u30fc<\/li>\n<\/ol>\n\n\n\n<p>WebView \u306f\u3001Web \u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 WebView \u306f\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30a6\u30a7\u30d6\u30da\u30fc\u30b8\u3084\u305d\u306e\u4ed6\u306e\u30a6\u30a7\u30d6\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u3001\u30a6\u30a7\u30d6\u30d3\u30e5\u30fc\u3068\u5bfe\u8a71\u3059\u308b\u305f\u3081\u306e JavaScript API \u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"8\">\n<li>\u8cc7\u672c<\/li>\n<\/ol>\n\n\n\n<p>\u30e2\u30fc\u30c0\u30eb\u306f\u3001\u30e2\u30fc\u30c0\u30eb\u30c0\u30a4\u30a2\u30ed\u30b0\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 \u30e2\u30fc\u30c0\u30eb\u306f\u3001\u3055\u307e\u3056\u307e\u306a\u53ef\u8996\u6027\u3068\u7de8\u96c6\u72b6\u614b\u3067\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306e\u4fbf\u5229\u306a\u65b9\u6cd5\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u3088\u308a\u512a\u308c\u305f\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3057\u3001\u958b\u767a\u8005\u304c\u3088\u308a\u8907\u96d1\u3067\u30cd\u30a4\u30c6\u30a3\u30d6\u306a\u30eb\u30c3\u30af \u30a2\u30f3\u30c9 \u30d5\u30a3\u30fc\u30eb \u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4f5c\u6210\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002 \u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u7279\u5b9a\u306e\u30cb\u30fc\u30ba\u3092\u6e80\u305f\u3059\u305f\u3081\u306e\u5236\u5fa1\u3068\u67d4\u8edf\u6027\u3082\u5411\u4e0a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u53cd\u5fdc\u3059\u308b \u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b ChatGPT<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u624b\u9806\u3092\u5b8c\u4e86\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u3092\u8a18\u8ff0\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b3\u30fc\u30c9\u3092\u8a18\u8ff0\u3057\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306eUI\u30c4\u30fc\u30eb\u30ad\u30c3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30b9\u30bf\u30e0\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001Android \u3067\u306f\u3001\u30ab\u30b9\u30bf\u30e0 \u30d3\u30e5\u30fc\u307e\u305f\u306f\u30d3\u30e5\u30fc\u30b0\u30eb\u30fc\u30d7\u3092 Java \u307e\u305f\u306f Kotlin \u3067\u8a18\u8ff0\u3057\u3066\u3001\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u5358\u7d14\u306a\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">scssCopy code<code>\/\/ ExampleView.java\n\npublic class ExampleView extends View {\n    public ExampleView(Context context) {\n        super(context);\n    }\n\n    @Override\n    protected void onDraw(Canvas canvas) {\n        super.onDraw(canvas);\n\n        \/\/ Draw a red rectangle\n        Paint paint = new Paint();\n        paint.setColor(Color.RED);\n        canvas.drawRect(0, 0, getWidth(), getHeight(), paint);\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001ExampleView \u3068\u3044\u3046\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30af\u30e9\u30b9\u304c\u4f5c\u6210\u3055\u308c\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e View \u304b\u3089\u7d99\u627f\u3055\u308c\u3001onDraw() \u30e1\u30bd\u30c3\u30c9\u306b\u8d64\u3044\u56db\u89d2\u5f62\u304c\u63cf\u753b\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u4f5c\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u6b21\u306b\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u4f5c\u6210\u3057\u3001\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u30e9\u30c3\u30d7\u3057\u3001JavaScript\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u3057\u3066\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u901a\u4fe1\u3059\u308b\u305f\u3081\u306e\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3068\u3057\u3066\u6a5f\u80fd\u3057\u3001\u3059\u3079\u3066\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u30a4\u30d9\u30f3\u30c8\u3092\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u6e21\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4e0a\u8a18\u306e\u4f8b\u306e\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u3057\u3066\u30e9\u30c3\u30d7\u3059\u308b\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">typescriptCopy code<code>\/\/ ExampleViewManager.java\n\npublic class ExampleViewManager extends SimpleViewManager&lt;ExampleView&gt; {\n    public static final String REACT_CLASS = \"ExampleView\";\n\n    @Override\n    public String getName() {\n        return REACT_CLASS;\n    }\n\n    @Override\n    protected ExampleView createViewInstance(ThemedReactContext reactContext) {\n        return new ExampleView(reactContext);\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001ExampleViewManager \u3068\u3044\u3046 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u30af\u30e9\u30b9\u304c\u4f5c\u6210\u3055\u308c\u3001\u3053\u308c\u306f SimpleViewManager \u304b\u3089\u7d99\u627f\u3055\u308c\u3001getName() \u30e1\u30bd\u30c3\u30c9\u3068 createViewInstance() \u30e1\u30bd\u30c3\u30c9\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3057\u307e\u3059\u3002 getName() \u30e1\u30bd\u30c3\u30c9\u306f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u540d\u3092\u8fd4\u3057\u3001createViewInstance() \u30e1\u30bd\u30c3\u30c9\u306f\u65b0\u3057\u3044\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3057\u3066\u305d\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u767b\u9332\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u6700\u5f8c\u306b\u3001JavaScript \u30b3\u30fc\u30c9\u3067\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u767b\u9332\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u8ffd\u52a0\u3059\u308b\u306b\u306f\u3001\u30e1\u30a4\u30f3\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3.java\u30d5\u30a1\u30a4\u30eb\u3067 getPackages() \u30e1\u30bd\u30c3\u30c9\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4e0a\u8a18\u306e\u4f8b\u306eReact\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u3092\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u767b\u9332\u3059\u308b\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>\/\/ MainApplication.java\n\npublic class MainApplication extends Application implements ReactApplication {\n    \/\/ ...\n\n    @Override\n    protected List&lt;ReactPackage&gt; getPackages() {\n        return Arrays.&lt;ReactPackage&gt;asList(\n            new MainReactPackage(),\n            new ExampleViewPackage() \/\/ Add the custom view package\n        );\n    }\n\n    \/\/ ...\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u3001getPackages() \u30e1\u30bd\u30c3\u30c9\u3067\u8fd4\u3055\u308c\u308b ReactPackage \u306e\u30ea\u30b9\u30c8\u306b ExampleViewPackage \u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002 \u3053\u308c\u306b\u3088\u308a\u3001ExampleViewManager \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 \u30e9\u30c3\u30d1\u30fc\u304c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u767b\u9332\u3055\u308c\u3001JavaScript \u30b3\u30fc\u30c9\u3067\u4f7f\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>&lt;ExampleView&gt; \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u4f7f\u7528\u3057\u3066\u3001\u30ab\u30b9\u30bf\u30e0\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u8981\u7d20\u3092\u8868\u793a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u30ab\u30b9\u30bf\u30e0UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u306f\u3001<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30ab\u30b9\u30bf\u30e0UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304cReact Native\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3068\u9023\u643a\u3057\u3066\u6a5f\u80fd\u3059\u308b\u3088\u3046\u306b\u3059\u308b\u305f\u3081\u306b\u5f93\u3046\u5fc5\u8981\u306e\u3042\u308bReact Native\u306e\u3044\u304f\u3064\u304b\u306e\u30eb\u30fc\u30eb\u3068\u898f\u5247\u304c\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 \u3044\u304f\u3064\u304b\u306e\u91cd\u8981\u306a\u8003\u616e\u4e8b\u9805\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u540d\u306f\u4e00\u610f\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001React \u304c\u305d\u308c\u3089\u3092\u9069\u5207\u306b\u8b58\u5225\u3057\u3066\u7ba1\u7406\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u5404\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u4e00\u610f\u306e\u540d\u524d\u3092\u4ed8\u3051\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u540d\u524d\u306f\u6587\u5b57\u5217\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30c3\u30d1\u30fc\u306b\u767b\u9332\u3055\u308c\u3066\u3044\u308b\u540d\u524d\u3068\u540c\u3058\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>propTypes \u5c5e\u6027\u3092\u5b9a\u7fa9\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>propTypes \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u691c\u8a3c\u3059\u308b\u305f\u3081\u306e\u30e1\u30ab\u30cb\u30ba\u30e0\u3067\u3059\u3002 React Native\u306f\u3001\u958b\u767a\u8005\u304c\u30d0\u30b0\u3092\u30c1\u30a7\u30c3\u30af\u3057\u3066\u4fee\u6b63\u3059\u308b\u306e\u306b\u5f79\u7acb\u3064\u3088\u3046\u306b\u3001\u958b\u767a\u4e2d\u306bpropTypes\u3092\u81ea\u52d5\u7684\u306b\u691c\u8a3c\u3057\u3001\u8b66\u544a\u3092\u51fa\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u5fc5\u8981\u306a\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30a2\u30d7\u30ed\u30fc\u30c1\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React Native \u306b\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u3068\u72b6\u614b\u3092\u7ba1\u7406\u3059\u308b\u305f\u3081\u306e\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3044\u304f\u3064\u304b\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001React Native \u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u9069\u5207\u306b\u7ba1\u7406\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u3053\u308c\u3089\u306e\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u6b63\u3057\u3044\u30b9\u30ec\u30c3\u30c9\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u3059\u3079\u3066\u306e UI \u64cd\u4f5c\u3092\u30e1\u30a4\u30f3\u30b9\u30ec\u30c3\u30c9\u3067\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001\u30a8\u30e9\u30fc\u3084\u4f8b\u5916\u3092\u56de\u907f\u3059\u308b\u305f\u3081\u306b\u3001\u3059\u3079\u3066\u306e UI \u64cd\u4f5c\u304c\u30e1\u30a4\u30f3 \u30b9\u30ec\u30c3\u30c9\u3067\u5b9f\u884c\u3055\u308c\u308b\u3088\u3046\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001\u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f5c\u6210\u306f React Native \u306e\u91cd\u8981\u306a\u30bf\u30b9\u30af\u3067\u3042\u308a\u3001\u958b\u767a\u8005\u306f\u9ad8\u5ea6\u306b\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3055\u308c\u305f\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u3088\u308a\u512a\u308c\u305f\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3067\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u30ab\u30b9\u30bf\u30e0 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u306b\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 \u30b3\u30fc\u30c9\u3092\u8a18\u8ff0\u3057\u3001React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 \u30e9\u30c3\u30d1\u30fc\u3092\u4f5c\u6210\u3057\u3001\u30e9\u30c3\u30d1\u30fc\u3092\u767b\u9332\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304cReact Native\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u3059\u308b\u305f\u3081\u306b\u3001React Native\u304c\u5f93\u3046\u5fc5\u8981\u306e\u3042\u308b\u3044\u304f\u3064\u304b\u306e\u30eb\u30fc\u30eb\u3068\u898f\u5247\u3082\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8ChatGPT\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u8a73\u7d30\u306b\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u624b\u9806\u3092\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30a4\u30f3\u30dd\u30fc\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u30a4\u30f3\u30dd\u30fc\u30c8\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092 JavaScript \u30b3\u30fc\u30c9\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 View \u3068 Text \u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import { View, Text } from 'react-native';\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001import \u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001&#8217;react-native&#8217; \u30e2\u30b8\u30e5\u30fc\u30eb\u304b\u3089 View \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068 Text \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 JSX \u306e\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u540d\u524d\u3092\u4f7f\u7528\u3057\u3066\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3057\u3001\u305d\u308c\u3092\u5b50\u8981\u7d20\u307e\u305f\u306f\u5c5e\u6027\u3068\u3057\u3066\u4ed6\u306e UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u8ffd\u52a0\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u4f8b\u3067\u306f\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3080 MyComponent \u3068\u3044\u3046\u540d\u524d\u306e React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, Text } from 'react-native';\n\nconst MyComponent = () =&gt; {\n  return (\n    &lt;View&gt;\n      &lt;Text&gt;Hello, world!&lt;\/Text&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default MyComponent;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001JSX \u3092\u4f7f\u7528\u3057\u3066\u30d3\u30e5\u30fc\u3068\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u3001\u30c6\u30ad\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b50\u8981\u7d20\u3068\u3057\u3066 UI \u30c4\u30ea\u30fc\u306b\u8ffd\u52a0\u3055\u308c\u307e\u3059\u3002 \u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4ed6\u306e UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u4f7f\u7528\u3057\u3066\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30eb\u30c3\u30af \u30a2\u30f3\u30c9 \u30d5\u30a3\u30fc\u30eb\u3092\u6301\u3064\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u5916\u89b3\u3068\u52d5\u4f5c\u3092\u5236\u5fa1\u3059\u308b\u591a\u6570\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u540c\u3058\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u3001\u305d\u306e\u52d5\u4f5c\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4f8b\u3048\u3070\u3001\u6b21\u306e\u4f8b\u3067\u306f\u3001MyButton \u3068\u3044\u3046\u540d\u524d\u306e\u30ab\u30b9\u30bf\u30e0\u30dc\u30bf\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u3001\u30d7\u30ed\u30d1\u30c6\u30a3\u306e 1 \u3064 (\u8272) \u304c\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u6e21\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React from 'react';\nimport { View, TouchableOpacity, Text } from 'react-native';\n\nconst MyButton = ({ title, color }) =&gt; {\n  return (\n    &lt;TouchableOpacity style={{ backgroundColor: color }}&gt;\n      &lt;Text&gt;{title}&lt;\/Text&gt;\n    &lt;\/TouchableOpacity&gt;\n  );\n}\n\nexport default MyButton;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30bf\u30c3\u30c1\u53ef\u80fd\u306a\u4e0d\u900f\u660e\u5ea6\u3092\u4f7f\u7528\u3057\u3066\u30dc\u30bf\u30f3\u3092\u4f5c\u6210\u3057\u3001backgroundColor \u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30dc\u30bf\u30f3\u306e\u80cc\u666f\u306b color \u5c5e\u6027\u3092\u9069\u7528\u3057\u307e\u3059\u3002 \u30dc\u30bf\u30f3\u306e\u8272\u3092\u5236\u5fa1\u3059\u308b\u306b\u306f\u3001color\u5c5e\u6027\u3092MyButton\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u6e21\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u30e1\u30bd\u30c3\u30c9<\/li>\n<\/ol>\n\n\n\n<p>\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u305d\u306e\u52d5\u4f5c\u3068\u72b6\u614b\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306e\u3055\u307e\u3056\u307e\u306a\u65b9\u6cd5\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 React Native \u3067\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3078\u306e\u53c2\u7167\u3092\u53c2\u7167\u3057\u3001\u305d\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3059\u3053\u3068\u3067\u3001\u3053\u308c\u3089\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u4f8b\u3067\u306f\u3001MyComponent \u3068\u3044\u3046\u540d\u524d\u306e React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u305d\u306e\u8272\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u5909\u66f4\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useRef } from 'react';\nimport { View } from 'react-native';\n\nconst MyComponent = () =&gt; {\n  const viewRef = useRef(null);\n\n  const changeColor = () =&gt; {\n    viewRef.current.setNativeProps({ style: { backgroundColor: 'blue' } });\n  }\n\n  return (\n    &lt;View ref={viewRef} style={{ backgroundColor: 'red' }}&gt;\n      &lt;Button title=\"Change color\" onPress={change\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30d3\u30e5\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3078\u306e\u53c2\u7167\u304cuseRef\u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u4f5c\u6210\u3055\u308c\u3001\u30d3\u30e5\u30fc\u306eref\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u6e21\u3055\u308c\u307e\u3059\u3002 \u6b21\u306b\u3001\u30d3\u30e5\u30fc\u306e setNativeProps \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u80cc\u666f\u8272\u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5909\u66f4\u3059\u308b changeColor \u3068\u3044\u3046\u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001\u30dc\u30bf\u30f3\u306e onPress \u30a4\u30d9\u30f3\u30c8 \u30cf\u30f3\u30c9\u30e9\u30fc\u3067 changeColor \u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3066\u3001\u30d3\u30e5\u30fc\u306e\u8272\u3092\u5909\u66f4\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native\u3067\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u9ad8\u5ea6\u306b\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3055\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4f5c\u6210\u3057\u3001\u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u5916\u89b3\u3068\u52d5\u4f5c\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u30cd\u30a4\u30c6\u30a3\u30d6UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001\u30a4\u30f3\u30dd\u30fc\u30c8\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066JavaScript\u30b3\u30fc\u30c9\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u307e\u305f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6 UI \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u305d\u306e\u52d5\u4f5c\u3068\u72b6\u614b\u3092\u5236\u5fa1\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3APIChatGPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u306b\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u3068\u547c\u3070\u308c\u308b\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3 API \u306e\u30bb\u30c3\u30c8\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305f API \u306f\u3001\u30d3\u30e5\u30fc\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308b\u4e00\u9023\u306e JavaScript API \u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u306e\u91cd\u8981\u306a\u6a5f\u80fd\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u306f\u540c\u3058 API \u3092\u4f7f\u7528\u3057\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305f API \u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u52b9\u679c\u306e\u5236\u5fa1\u306b\u4f7f\u7528\u3067\u304d\u308b\u306e\u3068\u540c\u3058 API \u30bb\u30c3\u30c8\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u3053\u308c\u306b\u3088\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u306e\u304c\u3088\u308a\u7c21\u5358\u3067\u4e00\u8cab\u6027\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30a8\u30f3\u30b8\u30f3\u306b\u57fa\u3065\u304f<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305fAPI\u306f\u3001React Native\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30a8\u30f3\u30b8\u30f3\u306b\u57fa\u3065\u3044\u3066\u304a\u308a\u3001iOS\u304a\u3088\u3073Android\u30c7\u30d0\u30a4\u30b9\u3067\u4e00\u8cab\u3057\u305f\u30eb\u30c3\u30af\u30a2\u30f3\u30c9\u30d5\u30a3\u30fc\u30eb\u3067\u3001\u3088\u308a\u9ad8\u901f\u3067\u30b9\u30e0\u30fc\u30ba\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u3068\u88dc\u9593\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305f API \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u3068\u88dc\u9593\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u30b9\u30bf\u30a4\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u3001\u4f4d\u7f6e\u3001\u30b5\u30a4\u30ba\u3001\u8272\u306a\u3069\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002 \u88dc\u9593\u306f\u30012 \u3064\u306e\u5024\u306e\u9593\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3057\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u4e2d\u306b\u4e2d\u9593\u5024\u3092\u751f\u6210\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u5fdc\u7b54\u3092\u30b5\u30dd\u30fc\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305f API \u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u5236\u5fa1\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308b\u30b8\u30a7\u30b9\u30c1\u30e3\u5fdc\u7b54\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001\u30c9\u30e9\u30c3\u30b0\u3057\u306a\u304c\u3089\u30d3\u30e5\u30fc\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u7c21\u5358\u306b\u7d71\u5408\u3067\u304d\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5316\u3055\u308c\u305fAPI\u306f\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u7c21\u5358\u306b\u7d71\u5408\u3067\u304d\u3001React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u72b6\u614b\u30e1\u30bd\u30c3\u30c9\u3068\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u3092\u4f7f\u7528\u3057\u3066\u5358\u7d14\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u65b9\u6cd5\u306e\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useRef } from 'react';\nimport { Animated, View } from 'react-native';\n\nconst MyComponent = () =&gt; {\n  const fadeAnim = useRef(new Animated.Value(0)).current;\n\n  const fadeIn = () =&gt; {\n    Animated.timing(fadeAnim, {\n      toValue: 1,\n      duration: 1000,\n      useNativeDriver: true\n    }).start();\n  };\n\n  return (\n    &lt;View&gt;\n      &lt;Animated.View style={{ opacity: fadeAnim }}&gt;\n        &lt;Text&gt;Hello, world!&lt;\/Text&gt;\n      &lt;\/Animated.View&gt;\n      &lt;Button title=\"Fade in\" onPress={fadeIn} \/&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default MyComponent;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30d3\u30e5\u30fc\u306e\u900f\u660e\u5ea6\u3092\u5236\u5fa1\u3059\u308b useRef \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066 Animated.Value \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3078\u306e\u53c2\u7167\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6b21\u306b\u3001Animated.timing \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066 fadeAnim \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u5024\u3092\u5909\u66f4\u3057\u30011000 \u30df\u30ea\u79d2\u4ee5\u5185\u306b\u30d3\u30e5\u30fc\u306b\u30d5\u30a7\u30fc\u30c9\u30a4\u30f3\u3059\u308bfadeIn \u3068\u3044\u3046\u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001\u30dc\u30bf\u30f3\u3068 Animated.View \u3092\u542b\u3080\u30d3\u30e5\u30fc\u304c\u4f5c\u6210\u3055\u308c\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u304c\u30c8\u30ea\u30ac\u30fc\u3055\u308c\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3API\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u5f37\u529b\u306a\u30c4\u30fc\u30eb\u30bb\u30c3\u30c8\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u306f\u3001\u3088\u308a\u9ad8\u901f\u3067\u30b9\u30e0\u30fc\u30ba\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u63d0\u4f9b\u3057\u3001\u30b9\u30bf\u30a4\u30eb\u5c5e\u6027\u3068\u88dc\u9593\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u30cd\u30a4\u30c6\u30a3\u30d6 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 \u30a8\u30f3\u30b8\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3API\u3092\u5909\u63db\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React\u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044\u30ec\u30a4\u30a2\u30a6\u30c8\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30c1\u30e3\u30c3\u30c8GPT<\/p>\n\n\n\n<p>React Native \u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u5358\u7d14\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e LayoutAnimation API \u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u958b\u767a\u8005\u306f\u3001LayoutAnimation API \u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u3092\u5b9a\u7fa9\u3059\u308b\u3053\u3068\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u5909\u66f4\u3092\u81ea\u52d5\u5316\u3067\u304d\u307e\u3059\u3002 \u30ec\u30a4\u30a2\u30a6\u30c8\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u306e\u91cd\u8981\u306a\u6a5f\u80fd\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5358\u7d14\u306a\u30ec\u30a4\u30a2\u30a6\u30c8\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306b\u9069\u3057\u3066\u3044\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>API \u306f\u3001\u5358\u7d14\u306a\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u306e\u306b\u9069\u3057\u3066\u3044\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001LayoutAnimation API \u3092\u4f7f\u7528\u3057\u3066\u3001\u30d3\u30e5\u30fc\u306e\u4f4d\u7f6e\u3068\u30b5\u30a4\u30ba\u3092\u81ea\u52d5\u7684\u306b\u8abf\u6574\u3057\u3001\u6ed1\u3089\u304b\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>LayoutAnimation API \u306b\u306f\u3001\u30b9\u30d7\u30ea\u30f3\u30b0\u3084\u30ea\u30cb\u30a2\u306a\u3069\u306e\u5b9a\u7fa9\u6e08\u307f\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u306e\u30bb\u30c3\u30c8\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u3066\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u3088\u308a\u8a73\u7d30\u306b\u5236\u5fa1\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30b7\u30f3\u30d7\u30eb\u3067\u4f7f\u3044\u3084\u3059\u3044<\/li>\n<\/ol>\n\n\n\n<p>LayoutAnimation API \u306f\u975e\u5e38\u306b\u30b7\u30f3\u30d7\u30eb\u3067\u4f7f\u3044\u3084\u3059\u304f\u3001\u958b\u767a\u8005\u306f 1 \u3064\u306e\u30e1\u30bd\u30c3\u30c9\u547c\u3073\u51fa\u3057\u3092\u4f7f\u7528\u3057\u3066\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u6709\u52b9\u306b\u3067\u304d\u307e\u3059\u3002 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u5b9f\u73fe\u3059\u308b\u305f\u3081\u306b\u8907\u96d1\u306a\u30b3\u30fc\u30c9\u3092\u8a18\u8ff0\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>iOS \u304a\u3088\u3073 Android \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u30b5\u30dd\u30fc\u30c8<\/li>\n<\/ol>\n\n\n\n<p>LayoutAnimation API \u306f\u3001iOS \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3068 Android \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u4e21\u65b9\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3001\u4e00\u8cab\u3057\u305f\u52d5\u4f5c\u3068\u5916\u89b3\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>LayoutAnimation API \u3092\u4f7f\u7528\u3057\u3066\u5358\u7d14\u306a\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u65b9\u6cd5\u306e\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useState } from 'react';\nimport { Button, View, Text, LayoutAnimation } from 'react-native';\n\nconst MyComponent = () =&gt; {\n  const [showText, setShowText] = useState(false);\n\n  const toggleText = () =&gt; {\n    LayoutAnimation.configureNext(LayoutAnimation.Presets.spring);\n    setShowText(!showText);\n  };\n\n  return (\n    &lt;View&gt;\n      &lt;Button title=\"Toggle text\" onPress={toggleText} \/&gt;\n      {showText &amp;&amp; &lt;Text&gt;Hello, world!&lt;\/Text&gt;}\n    &lt;\/View&gt;\n  );\n}\n\nexport default MyComponent;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30dc\u30bf\u30f3\u3068\u30c6\u30ad\u30b9\u30c8\u30d3\u30e5\u30fc\u3092\u542b\u3080MyComponent\u3068\u3044\u3046React\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 useState \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001\u30c6\u30ad\u30b9\u30c8 \u30d3\u30e5\u30fc\u3092\u8868\u793a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u3092\u8ffd\u8de1\u3057\u307e\u3059\u3002 \u6b21\u306b\u3001showText \u306e\u72b6\u614b\u3092\u5207\u308a\u66ff\u3048\u3001LayoutAnimation.configureNext \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u69cb\u6210\u3059\u308b toggleText \u3068\u3044\u3046\u95a2\u6570\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001\u30c6\u30ad\u30b9\u30c8 \u30d3\u30e5\u30fc\u306e\u6761\u4ef6\u4ed8\u304d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3067 showText \u5909\u6570\u3092\u4f7f\u7528\u3057\u3066\u3001\u30c6\u30ad\u30b9\u30c8 \u30d3\u30e5\u30fc\u3092\u8868\u793a\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001LayoutAnimation API \u306f\u3001\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u7c21\u5358\u3067\u52b9\u679c\u7684\u306a\u65b9\u6cd5\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 LayoutAnimation API \u306f\u3001\u5358\u7d14\u306a\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3067\u52d5\u4f5c\u3057\u3001\u5b9a\u7fa9\u6e08\u307f\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u306e\u30bb\u30c3\u30c8\u3068\u30ab\u30b9\u30bf\u30e0 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u69cb\u6210\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 LayoutAnimation API \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u30ec\u30a4\u30a2\u30a6\u30c8 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u7c21\u5358\u306b\u6709\u52b9\u306b\u3057\u3066\u5236\u5fa1\u3057\u3001\u30e6\u30fc\u30b6\u30fc \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30b8\u30a7\u30b9\u30c1\u30e3\u30fc\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fc\u30c1\u30e3\u30c3\u30c8GPT\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u306f\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u30b8\u30a7\u30b9\u30c1\u30e3\u30a4\u30d9\u30f3\u30c8\u3092\u30ad\u30e3\u30d7\u30c1\u30e3\u3057\u3066\u5fdc\u7b54\u3059\u308b\u305f\u3081\u306e\u3001\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fc\u3092\u542b\u3080\u4e00\u9023\u306e\u30b8\u30a7\u30b9\u30c1\u30e3 API \u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 PanResponder API \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u30ab\u30b9\u30bf\u30e0 \u30b8\u30a7\u30b9\u30c1\u30e3\u5fdc\u7b54\u3092\u4f5c\u6210\u3057\u3001\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u4e2d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u5916\u89b3\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0API\u306e\u3044\u304f\u3064\u304b\u306e\u91cd\u8981\u306a\u6a5f\u80fd\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30ab\u30b9\u30bf\u30e0\u30b8\u30a7\u30b9\u30c1\u30e3\u5fdc\u7b54\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059<\/li>\n<\/ol>\n\n\n\n<p>PanResponder API \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u958b\u767a\u8005\u306f\u30ab\u30b9\u30bf\u30e0 \u30b8\u30a7\u30b9\u30c1\u30e3\u5fdc\u7b54\u3092\u4f5c\u6210\u3057\u3001\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u4e2d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u5916\u89b3\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 PanResponder API \u3092\u4f7f\u7528\u3057\u3066\u3001\u30b9\u30ef\u30a4\u30d7\u3001\u56de\u8ee2\u3001\u30ba\u30fc\u30e0\u306e\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u3092\u30ad\u30e3\u30d7\u30c1\u30e3\u3057\u3001\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u901f\u5ea6\u306b\u57fa\u3065\u3044\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u52d5\u4f5c\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u67d4\u8edf\u6027\u3068\u8a2d\u5b9a\u53ef\u80fd<\/li>\n<\/ol>\n\n\n\n<p>\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fc API \u306f\u67d4\u8edf\u6027\u304c\u3042\u308a\u3001\u4e00\u9023\u306e\u69cb\u6210\u3092\u4f7f\u7528\u3057\u3066\u305d\u306e\u52d5\u4f5c\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001PanResponder \u306e onMoveShouldSetPanResponder \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u79fb\u52d5\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u306b\u5fdc\u7b54\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u5b9a\u7fa9\u3067\u304d\u307e\u3059\u3002 \u4ed6\u306e\u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u3001\u30b8\u30a7\u30b9\u30c1\u30e3\u306e\u5fdc\u7b54\u6027\u3068\u611f\u5ea6\u3092\u5b9a\u7fa9\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30a8\u30f3\u30b8\u30f3\u306e\u30b5\u30dd\u30fc\u30c8<\/li>\n<\/ol>\n\n\n\n<p>\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fcAPI\u306f\u3001React Native\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30a8\u30f3\u30b8\u30f3\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u304a\u308a\u3001iOS\u304a\u3088\u3073Android\u30c7\u30d0\u30a4\u30b9\u9593\u3067\u3001\u3088\u308a\u901f\u304f\u3001\u3088\u308a\u30b9\u30e0\u30fc\u30ba\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u4e00\u8cab\u3057\u305f\u30eb\u30c3\u30af\u30a2\u30f3\u30c9\u30d5\u30a3\u30fc\u30eb\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fc API \u3092\u4f7f\u7528\u3057\u3066\u5358\u7d14\u306a\u30b9\u30ef\u30a4\u30d7 \u30b8\u30a7\u30b9\u30c1\u30e3\u3092\u4f5c\u6210\u3059\u308b\u65b9\u6cd5\u306e\u4f8b\u3092\u6b21\u306b\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { useRef } from 'react';\nimport { Animated, PanResponder, View } from 'react-native';\n\nconst MyComponent = () =&gt; {\n  const pan = useRef(new Animated.ValueXY()).current;\n\n  const panResponder = useRef(\n    PanResponder.create({\n      onMoveShouldSetPanResponder: () =&gt; true,\n      onPanResponderMove: Animated.event([\n        null,\n        { dx: pan.x, dy: pan.y },\n      ]),\n      onPanResponderRelease: () =&gt; {\n        Animated.spring(pan, { toValue: { x: 0, y: 0 }, useNativeDriver: true }).start();\n      },\n    })\n  ).current;\n\n  return (\n    &lt;View style={{ flex: 1 }}&gt;\n      &lt;Animated.View\n        style={{\n          transform: [{ translateX: pan.x }, { translateY: pan.y }],\n        }}\n        {...panResponder.panHandlers}\n      &gt;\n        &lt;Text&gt;Hello, world!&lt;\/Text&gt;\n      &lt;\/Animated.View&gt;\n    &lt;\/View&gt;\n  );\n}\n\nexport default MyComponent;\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3092\u5236\u5fa1\u3059\u308b useRef \u30d5\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3001Animated.ValueXY \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3078\u306e\u53c2\u7167\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 \u6b21\u306b\u3001PanResponder.create \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066 PanResponder \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u3001\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u3092\u51e6\u7406\u3059\u308b\u305f\u3081\u306b onMoveShouldSetPanResponder\u3001onPanResponderMove\u3001\u304a\u3088\u3073 onPanResponderRelease \u30e1\u30bd\u30c3\u30c9\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002 \u6700\u5f8c\u306b\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30b9\u30bf\u30a4\u30eb\u3067 translateX \u30d7\u30ed\u30d1\u30c6\u30a3\u3068 translateY \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3092\u5236\u5fa1\u3057\u3001panHandler \u3092\u4f7f\u7528\u3057\u3066\u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u3092 PanResponder \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u6e21\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001PanResponder API \u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30e6\u30fc\u30b6\u30fc \u30b8\u30a7\u30b9\u30c1\u30e3 \u30a4\u30d9\u30f3\u30c8\u3092\u30ad\u30e3\u30d7\u30c1\u30e3\u3057\u3066\u5fdc\u7b54\u3059\u308b\u305f\u3081\u306e\u5f37\u529b\u306a\u30c4\u30fc\u30eb \u30bb\u30c3\u30c8\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u30d1\u30f3\u30ec\u30b9\u30dd\u30f3\u30c0\u30fcAPI\u3092\u4f7f\u7528\u3057\u3066\u3001\u958b\u767a\u8005\u306f\u30ab\u30b9\u30bf\u30e0\u30b8\u30a7\u30b9\u30c1\u30e3\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u30b8\u30a7\u30b9\u30c1\u30e3\u30a4\u30d9\u30f3\u30c8\u4e2d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3068\u5916\u89b3\u306b\u5fdc\u7b54\u3057\u3066\u5236\u5fa1\u3057\u307e\u3059\u3002 PanResponder API \u306f\u67d4\u8edf\u3067\u69cb\u6210\u53ef\u80fd\u3067\u3001\u3088\u308a\u9ad8\u901f\u3067\u30b9\u30e0\u30fc\u30ba\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u63d0\u4f9b\u3059\u308b\u30cd\u30a4\u30c6\u30a3\u30d6 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 \u30a8\u30f3\u30b8\u30f3\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002 \u4e0a\u8a18\u306e\u4f8b\u3067\u306f\u3001PanResponder API \u3092\u4f7f\u7528\u3057\u3066\u5358\u7d14\u306a\u30b9\u30ef\u30a4\u30d7 \u30b8\u30a7\u30b9\u30c1\u30e3\u3092\u4f5c\u6210\u3059\u308b\u65b9\u6cd5\u3068\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 API \u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f4d\u7f6e\u3092\u5236\u5fa1\u3059\u308b\u65b9\u6cd5\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002 \u958b\u767a\u8005\u306f\u3001PanResponder API \u3092\u4f7f\u7528\u3057\u3066\u3001\u3088\u308a\u9ad8\u5ea6\u306a\u30b8\u30a7\u30b9\u30c1\u30e3\u5fdc\u7b54\u3092\u4f5c\u6210\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u3088\u308a\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30ad\u30fc\u5c5e\u6027ChatGPT\u3092\u4f7f\u7528\u3057\u305f\u30cd\u30a4\u30c6\u30a3\u30d6\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u306b\u53cd\u5fdc\u3059\u308b\u3053\u3068\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067\u306f\u3001key \u5c5e\u6027\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u5404 React \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3078\u306e\u5909\u66f4\u3092\u8ffd\u8de1\u3059\u308b\u305f\u3081\u306b React \u3067\u4f7f\u7528\u3055\u308c\u308b\u4e00\u610f\u306e\u30ad\u30fc\u5c5e\u6027\u304c\u3042\u308a\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ad\u30fc\u5c5e\u6027\u304c\u5909\u66f4\u3055\u308c\u308b\u3068\u3001React\u306f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u3001\u305d\u308c\u4ee5\u5916\u306e\u5834\u5408\u306f\u65e2\u5b58\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u518d\u5229\u7528\u3092\u8a66\u307f\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30ad\u30fc\u5c5e\u6027\u3092\u4f7f\u7528\u3057\u3066 React \u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u65b9\u6cd5\u3092\u3044\u304f\u3064\u304b\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306b\u4e00\u610f\u306e\u30ad\u30fc\u5c5e\u6027\u3092\u5272\u308a\u5f53\u3066\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30ea\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u306f\u3001\u5404\u30ea\u30b9\u30c8\u9805\u76ee\u306b\u4e00\u610f\u306e\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5272\u308a\u5f53\u3066\u308b\u3053\u3068\u304c\u91cd\u8981\u3067\u3059\u3002 \u30ea\u30b9\u30c8\u9805\u76ee\u306b\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u306a\u3044\u5834\u5408\u3001\u307e\u305f\u306f\u8907\u6570\u306e\u30ea\u30b9\u30c8\u9805\u76ee\u304c\u540c\u3058\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5171\u6709\u3057\u3066\u3044\u308b\u5834\u5408\u3001React\u306f\u3069\u306e\u30ea\u30b9\u30c8\u9805\u76ee\u304c\u5909\u66f4\u3055\u308c\u305f\u304b\u3092\u8a8d\u8b58\u305b\u305a\u3001\u30ea\u30b9\u30c8\u5168\u4f53\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3092\u56de\u907f\u3059\u308b\u306b\u306f\u3001\u5404\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306b\u4e00\u610f\u306e\u30ad\u30fc\u5c5e\u6027 (\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306e ID \u3084\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u4f7f\u7528\u3059\u308b\u306a\u3069) \u3092\u5272\u308a\u5f53\u3066\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ad\u30fc\u5c5e\u6027\u3092\u52d5\u7684\u306b\u751f\u6210\u3057\u306a\u3044\u3088\u3046\u306b\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u52d5\u7684\u306b\u751f\u6210\u3059\u308b\u3068\u3001React\u306f\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u5909\u66f4\u3055\u308c\u305f\u304b\u3069\u3046\u304b\u3092\u5224\u65ad\u3067\u304d\u306a\u3044\u305f\u3081\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u307e\u3059\u3002 \u4ee3\u308f\u308a\u306b\u3001\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306e ID \u307e\u305f\u306f\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u306a\u3069\u3001\u9759\u7684\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u4e2d\u306b\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5909\u66f4\u3057\u306a\u3044\u3088\u3046\u306b\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u4e2d\u306b\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5909\u66f4\u3059\u308b\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u554f\u984c\u304c\u767a\u751f\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 \u3057\u305f\u304c\u3063\u3066\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u4e2d\u306b\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5909\u66f4\u3057\u306a\u3044\u3088\u3046\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u5909\u66f4\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u3067\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u30ad\u30fc\u5c5e\u6027\u3068\u3057\u3066\u4f7f\u7528\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044<\/li>\n<\/ol>\n\n\n\n<p>\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u30ad\u30fc\u5c5e\u6027\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3001\u3088\u304f\u3042\u308b\u9593\u9055\u3063\u305f\u30a2\u30d7\u30ed\u30fc\u30c1\u3067\u3059\u3002 \u30ea\u30b9\u30c8\u30a2\u30a4\u30c6\u30e0\u304c\u4e26\u3079\u66ff\u3048\u3089\u308c\u305f\u308a\u524a\u9664\u3055\u308c\u305f\u308a\u3059\u308b\u3068\u3001\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u304c\u5909\u66f4\u3055\u308c\u3001React\u304c\u30ea\u30b9\u30c8\u5168\u4f53\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 \u3057\u305f\u304c\u3063\u3066\u3001\u30ad\u30fc\u5c5e\u6027\u3068\u3057\u3066\u5b89\u5b9a\u3057\u305f\u8b58\u5225\u5b50\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059 (\u30ea\u30b9\u30c8 \u30a2\u30a4\u30c6\u30e0\u306e ID \u3084\u305d\u306e\u4ed6\u306e\u4e00\u610f\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u306a\u3069)\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30d5\u30e9\u30b0\u30e1\u30f3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<p>\u5834\u5408\u306b\u3088\u3063\u3066\u306f\u3001\u30ea\u30b9\u30c8\u5185\u306e\u8907\u6570\u306e\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u5834\u5408\u3001\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u5f79\u306b\u7acb\u305f\u306a\u3044\u30e9\u30c3\u30d1\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u30e9\u30c3\u30d7\u3059\u308b\u4ee3\u308f\u308a\u306b\u3001React\u306e\u30d5\u30e9\u30b0\u30e1\u30f3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u30d5\u30e9\u30b0\u30e1\u30f3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u8ffd\u52a0\u306e DOM \u30ce\u30fc\u30c9\u306e\u4f5c\u6210\u304c\u56de\u907f\u3055\u308c\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u304c\u5411\u4e0a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001key \u5c5e\u6027\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30ea\u30b9\u30c8\u9805\u76ee\u3078\u306e\u4e00\u610f\u306e\u30ad\u30fc\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5272\u308a\u5f53\u3066\u3001\u30ad\u30fc\u5c5e\u6027\u306e\u52d5\u7684\u751f\u6210\u306e\u56de\u907f\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u4e2d\u306e\u30ad\u30fc\u5c5e\u6027\u306e\u5909\u66f4\u306e\u56de\u907f\u3001\u30ad\u30fc\u5c5e\u6027\u3068\u3057\u3066\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u306e\u56de\u907f\u3001\u30d5\u30e9\u30b0\u30e1\u30f3\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f7f\u7528\u306f\u3059\u3079\u3066\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u65b9\u6cd5\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>PureComponent \u3068 memoChatGPT \u3092\u4f7f\u7528\u3057\u305f React Native \u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5c0f\u9053\u5177\u3068\u72b6\u614b\u304c\u5909\u5316\u3057\u305f\u304b\u3069\u3046\u304b\u3092\u691c\u51fa\u3067\u304d\u3001\u5909\u66f4\u3055\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u3001\u4e0d\u8981\u306a\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306f\u884c\u308f\u308c\u307e\u305b\u3093\u3002 PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3057\u3066 React Native \u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u65b9\u6cd5\u3092\u3044\u304f\u3064\u304b\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30d4\u30e5\u30a2\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f7f\u7528<\/li>\n<\/ol>\n\n\n\n<p>PureComponent \u306f\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306b React Native \u306b\u3088\u3063\u3066\u63d0\u4f9b\u3055\u308c\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308a\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002 PureComponent \u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u3001React \u306f\u81ea\u52d5\u7684\u306b\u5c0f\u9053\u5177\u3068\u30b9\u30c6\u30fc\u30c8\u5909\u66f4\u306e\u6d45\u3044\u6bd4\u8f03\u3092\u884c\u3044\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u5b9a\u3057\u307e\u3059\u3002 props \u3068\u72b6\u614b\u304c\u5909\u66f4\u3055\u308c\u306a\u3044\u5834\u5408\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30e1\u30e2\u3092\u4f7f\u3046<\/li>\n<\/ol>\n\n\n\n<p>memo\u306f\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306bReact\u304c\u63d0\u4f9b\u3059\u308b\u5225\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3042\u308a\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002 memo \u306f PureComponent \u306b\u4f3c\u3066\u3044\u307e\u3059\u304c\u3001\u6a5f\u80fd\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u9069\u3057\u3066\u3044\u307e\u3059\u3002 \u30e1\u30e2\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React\u306f\u81ea\u52d5\u7684\u306b\u5c0f\u9053\u5177\u306e\u5909\u66f4\u3092\u6d45\u3044\u6bd4\u8f03\u3092\u884c\u3044\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u5b9a\u3057\u307e\u3059\u3002 props \u304c\u5909\u66f4\u3055\u308c\u306a\u3044\u5834\u5408\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<p>\u4ee5\u4e0b\u306f\u3001PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3057\u3066 React Native \u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { PureComponent } from 'react';\nimport { View, Text } from 'react-native';\n\nclass MyComponent extends PureComponent {\n  render() {\n    return (\n      &lt;View&gt;\n        &lt;Text&gt;{this.props.text}&lt;\/Text&gt;\n      &lt;\/View&gt;\n    );\n  }\n}\n\nexport default MyComponent;\n\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">javascriptCopy code<code>import React, { memo } from 'react';\nimport { View, Text } from 'react-native';\n\nconst MyComponent = memo((props) =&gt; {\n  return (\n    &lt;View&gt;\n      &lt;Text&gt;{props.text}&lt;\/Text&gt;\n    &lt;\/View&gt;\n  );\n});\n\nexport default MyComponent;\n\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8a18\u306e\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3067\u306f\u3001PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3057\u3066\u3001MyComponent \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3057\u3066\u3044\u307e\u3059\u3002 MyComponent \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e prop \u304c\u5909\u66f4\u3055\u308c\u308b\u3068\u3001PureComponent \u3068\u30e1\u30e2\u306f\u81ea\u52d5\u7684\u306b\u6d45\u3044\u6bd4\u8f03\u3092\u884c\u3044\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 PureComponent \u3068\u30e1\u30e2\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u3001React \u306f\u81ea\u52d5\u7684\u306b\u5c0f\u9053\u5177\u3068\u72b6\u614b\u5909\u5316\u306e\u6d45\u3044\u6bd4\u8f03\u3092\u884c\u3044\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u5b9a\u3057\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u65b9\u6cd5\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>ChatGPT\u306e\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u907f\u3051\u308b\u305f\u3081\u306b\u3001React\u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316\u3092\u8a73\u7d30\u306b\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native\u3067\u306f\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3059\u308b\u3053\u3068\u306f\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u65b9\u6cd5\u3067\u3059\u3002 React\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30e1\u30ab\u30cb\u30ba\u30e0\u306b\u3088\u308a\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5c0f\u9053\u5177\u3084\u72b6\u614b\u304c\u5909\u66f4\u3055\u308c\u308b\u305f\u3073\u306b\u3001\u305d\u308c\u3089\u306e\u5909\u66f4\u304c\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5916\u89b3\u3084\u52d5\u4f5c\u306b\u5f71\u97ff\u3092\u4e0e\u3048\u306a\u3044\u5834\u5408\u3067\u3082\u3001React\u306f\u305d\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u305d\u306e\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 \u3057\u305f\u304c\u3063\u3066\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3059\u308b\u3068\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3059\u308b\u65b9\u6cd5\u3092\u3044\u304f\u3064\u304b\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f7f\u7528\u3059\u3079\u304d\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u66f4\u65b0\u307e\u305f\u306f\u7d14\u7c8b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8<\/li>\n<\/ol>\n\n\n\n<p>shouldComponentUpdate \u307e\u305f\u306f PureComponent \u3092\u4f7f\u7528\u3057\u3066\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 shouldComponentUpdate \u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5c0f\u9053\u5177\u307e\u305f\u306f\u72b6\u614b\u304c\u5909\u5316\u3057\u305f\u3068\u304d\u306b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u3092\u5224\u65ad\u3059\u308b React \u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u306e 1 \u3064\u3067\u3059\u3002 \u304c false \u3092\u8fd4\u3059\u5834\u5408\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u307e\u305b\u3093\u3002 PureComponent \u306f React Native \u306b\u3088\u3063\u3066\u63d0\u4f9b\u3055\u308c\u308b\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u5225\u306e\u65b9\u6cd5\u3067\u3001shouldComponentUpdate \u306e\u30c1\u30a7\u30c3\u30af\u3092\u81ea\u52d5\u5316\u3057\u307e\u3059\u3002 shouldComponentUpdate \u307e\u305f\u306f PureComponent \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>React.memo\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React.memo\u306f\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u306e\u306b\u5f79\u7acb\u3064\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306bReact\u304c\u63d0\u4f9b\u3059\u308b\u5225\u306e\u65b9\u6cd5\u3067\u3059\u3002 React.memo\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React\u306f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u7d50\u679c\u3092\u30ad\u30e3\u30c3\u30b7\u30e5\u3057\u3001\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u5909\u66f4\u3055\u308c\u305f\u5834\u5408\u306b\u306e\u307f\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002 React.memo\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30e1\u30bd\u30c3\u30c9\u3067\u95a2\u6570\u3084\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3055\u306a\u3044\u3067\u304f\u3060\u3055\u3044<\/li>\n<\/ol>\n\n\n\n<p>\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0 \u30e1\u30bd\u30c3\u30c9\u3067\u95a2\u6570\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3059\u3068\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3055\u308c\u308b\u305f\u3073\u306b\u3053\u308c\u3089\u306e\u95a2\u6570\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u305f\u3081\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u304c\u767a\u751f\u3057\u307e\u3059\u3002 \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u95a2\u6570\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u30de\u30a6\u30f3\u30c8\u3055\u308c\u305f\u3068\u304d\u306b\u4e00\u5ea6\u3060\u3051\u547c\u3073\u51fa\u3055\u308c\u308b\u3088\u3046\u306b\u3001\u305d\u308c\u3089\u3092\u30af\u30e9\u30b9 \u30e1\u30f3\u30d0\u30fc\u95a2\u6570\u3068\u3057\u3066\u5b9a\u7fa9\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>shouldComponentUpdate \u3092\u4f7f\u7528\u3057\u3066\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6700\u9069\u5316\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u591a\u6570\u306e\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6700\u5c0f\u9650\u306b\u6291\u3048\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u5b50\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u5236\u5fa1\u3067\u304d\u307e\u3059\u3002 \u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e prop \u304c\u5909\u66f4\u3055\u308c\u306a\u3044\u5834\u5408\u306f\u3001false \u3092\u8fd4\u3059\u3053\u3068\u304c\u3067\u304d\u308b\u305f\u3081\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3059\u308b\u3053\u3068\u306f\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u65b9\u6cd5\u3067\u3059\u3002 shouldComponentUpdate \u307e\u305f\u306f PureComponent \u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u5236\u5fa1\u3057\u3001React.memo \u3092\u4f7f\u7528\u3057\u3066\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u7d50\u679c\u3092\u30ad\u30e3\u30c3\u30b7\u30e5\u3057\u3001\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30e1\u30bd\u30c3\u30c9\u3067\u95a2\u6570\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3055\u306a\u3044\u3088\u3046\u306b\u3057\u3001shouldComponentUpdate \u3092\u4f7f\u7528\u3057\u3066\u30b5\u30d6\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6700\u9069\u5316\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3057\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc\u30cd\u30a4\u30c6\u30a3\u30d6\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316\u30ea\u30b9\u30c8 \u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316ChatGPT<\/p>\n\n\n\n<p>React Native\u3067\u306f\u3001\u30ea\u30b9\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306f\u975e\u5e38\u306b\u4e00\u822c\u7684\u306a\u30b7\u30ca\u30ea\u30aa\u3067\u3042\u308a\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316\u306e\u7126\u70b9\u306e1\u3064\u3067\u3059\u3002 \u30ea\u30b9\u30c8\u306e\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u51e6\u7406\u4e2d\u306b\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u306a\u3044\u3068\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u975e\u5e38\u306b\u9045\u304f\u306a\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 React Native\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u65b9\u6cd5\u3092\u3044\u304f\u3064\u304b\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8\u307e\u305f\u306f\u30bb\u30af\u30b7\u30e7\u30f3\u30ea\u30b9\u30c8\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>FlatList \u3068 SectionList \u306f\u3001\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306b React Native \u304c\u63d0\u4f9b\u3059\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3059\u3002 \u53ef\u8996\u9818\u57df\u306e\u5185\u5bb9\u306e\u307f\u3092\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3057\u305f\u308a\u3001\u30c7\u30fc\u30bf\u3092\u52d5\u7684\u306b\u30ed\u30fc\u30c9\u3057\u305f\u308a\u3059\u308b\u306a\u3069\u306e\u6700\u9069\u5316\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002 FlatList \u3068 SectionList \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u304c\u5927\u5e45\u306b\u5411\u4e0a\u3057\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u30ad\u30fc \u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>key \u5c5e\u6027\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001React \u306f\u3069\u306e\u8981\u7d20\u304c\u65b0\u3057\u304f\u3001\u3069\u306e\u8981\u7d20\u304c\u53e4\u3044\u304b\u3092\u8b58\u5225\u3057\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30d5\u30e9\u30c3\u30c8\u30ea\u30b9\u30c8\u307e\u305f\u306f\u30bb\u30af\u30b7\u30e7\u30f3\u30ea\u30b9\u30c8\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u3001\u30ad\u30fc\u5c5e\u6027\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u81ea\u52d5\u7684\u306b\u8ffd\u52a0\u3055\u308c\u307e\u3059\u3002 \u901a\u5e38\u306e\u30ea\u30b9\u30c8\u306e\u5834\u5408\u306f\u3001key \u5c5e\u6027\u3092\u624b\u52d5\u3067\u8ffd\u52a0\u3067\u304d\u307e\u3059\u3002 key \u5c5e\u6027\u306f\u6587\u5b57\u5217\u3067\u3001\u4e00\u610f\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u3001\u5909\u66f4\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002 \u30ea\u30b9\u30c8\u5185\u306e\u5404\u8981\u7d20\u306b\u30ad\u30fc\u5c5e\u6027\u3092\u8ffd\u52a0\u3059\u308b\u3068\u3001React\u304c\u30ea\u30b9\u30c8\u5185\u306e\u3059\u3079\u3066\u306e\u8981\u7d20\u3092\u8ffd\u8de1\u3057\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u66f4\u65b0\u307e\u305f\u306fReact.memo<\/li>\n<\/ol>\n\n\n\n<p>shouldComponentUpdate \u307e\u305f\u306f React.memo \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002 \u30ea\u30b9\u30c8\u5185\u306e\u5404\u8981\u7d20\u306b\u3064\u3044\u3066\u3001shouldComponentUpdate \u307e\u305f\u306f React.memo \u3092\u4f7f\u7528\u3057\u3066\u3001\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u3092\u5224\u65ad\u3067\u304d\u307e\u3059\u3002 \u30ea\u30b9\u30c8\u5185\u306e\u8981\u7d20\u3092\u518d\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u306a\u3044\u5834\u5408\u306f\u3001false \u3092\u8fd4\u3059\u3053\u3068\u304c\u3067\u304d\u308b\u305f\u3081\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>getItemLayout \u3092\u4f7f\u7528\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>getItemLayout \u306f\u3001\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306b FlatList \u3068 SectionList \u306b\u3088\u3063\u3066\u63d0\u4f9b\u3055\u308c\u308b\u30e1\u30bd\u30c3\u30c9\u3067\u3059\u3002 getItemLayout \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30ea\u30b9\u30c8\u5185\u306e\u5404\u8981\u7d20\u306e\u30b5\u30a4\u30ba\u3068\u4f4d\u7f6e\u3092\u4e8b\u524d\u306b\u8a08\u7b97\u3067\u304d\u308b\u305f\u3081\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>\u30c7\u30fc\u30bf\u3092\u4e00\u62ec\u66f4\u65b0\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30ea\u30b9\u30c8 \u30c7\u30fc\u30bf\u3092\u66f4\u65b0\u3059\u308b\u3068\u304d\u306f\u3001\u983b\u7e41\u306a\u66f4\u65b0\u3092\u907f\u3051\u308b\u3088\u3046\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 \u4ee3\u308f\u308a\u306b\u3001\u30c7\u30fc\u30bf\u3092\u30d0\u30c3\u30c1\u3067\u66f4\u65b0\u3057\u3066\u3001\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 setState \u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u30c7\u30fc\u30bf\u3092\u4e00\u62ec\u3067\u66f4\u65b0\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001\u30ea\u30b9\u30c8\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u306f\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6700\u9069\u5316\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u30dd\u30a4\u30f3\u30c8\u306e1\u3064\u3067\u3059\u3002 FlatList \u307e\u305f\u306f SectionList \u3092\u4f7f\u7528\u3057\u3066\u3001\u30ea\u30b9\u30c8\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3001\u30ad\u30fc\u5c5e\u6027\u3001shouldComponentUpdate\u3001\u307e\u305f\u306f React.memo \u3092\u6700\u9069\u5316\u3057\u3066\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u56de\u907f\u3057\u3001getItemLayout \u3092\u4f7f\u7528\u3057\u3066\u30ea\u30b9\u30c8\u5185\u306e\u5404\u8981\u7d20\u306e\u30b5\u30a4\u30ba\u3068\u4f4d\u7f6e\u3092\u4e8b\u524d\u306b\u8a08\u7b97\u3057\u3001\u30c7\u30fc\u30bf\u3092\u30d0\u30c3\u30c1\u66f4\u65b0\u3057\u3066\u4e0d\u8981\u306a\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u3001\u3088\u308a\u30b9\u30e0\u30fc\u30ba\u306b\u3059\u308b\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3055\u308c\u305fAndroid\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3ChatGPT\u3092\u30cd\u30a4\u30c6\u30a3\u30d6\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u3057\u3066\u516c\u958b\u3059\u308b\u53cd\u5fdc\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3068\u516c\u958b\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u672c\u756a\u74b0\u5883\u306b\u30c7\u30d7\u30ed\u30a4\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067 Android \u30a2\u30d7\u30ea\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3057\u3066\u516c\u958b\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u307e\u305a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u7f72\u540d\u306b\u4f7f\u7528\u3059\u308b\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 keytool \u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">vbnetCopy code<code>keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001my-release-key.keystore \u3068\u3044\u3046\u540d\u524d\u306e\u9375\u30b9\u30c8\u30a2\u30fb\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>gradle \u30d5\u30a1\u30a4\u30eb\u3092\u69cb\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u3092\u516c\u958b\u53ef\u80fd\u306a APK \u30d5\u30a1\u30a4\u30eb\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b\u306b\u306f\u3001gradle \u30d5\u30a1\u30a4\u30eb\u306b\u3044\u304f\u3064\u304b\u306e\u8a2d\u5b9a\u304c\u5fc5\u8981\u3067\u3059\u3002 \u3053\u308c\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30f3\u30c9\u30ed\u30a4\u30c9\/\u30a2\u30d7\u30ea\/\u30d3\u30eb\u30c9.gradle\u30d5\u30a1\u30a4\u30eb\u3067\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u6b21\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u3001gradle \u30d5\u30a1\u30a4\u30eb\u3092\u69cb\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sqlCopy code<code>android {\n    ...\n    defaultConfig {\n        ...\n        signingConfigs {\n            release {\n                storeFile file('my-release-key.keystore')\n                storePassword '****'\n                keyAlias 'my-key-alias'\n                keyPassword '****'\n            }\n        }\n        buildTypes {\n            release {\n                ...\n                signingConfig signingConfigs.release\n            }\n        }\n    }\n    ...\n}\n<\/code><\/pre>\n\n\n\n<p>\u305d\u306e\u4e2d\u3067\u3001my-release-key.keystore \u306f\u4ee5\u524d\u306b\u751f\u6210\u3055\u308c\u305f\u7f72\u540d\u9375\u306e\u9375\u30b9\u30c8\u30a2\u30d5\u30a1\u30a4\u30eb\u540d\u3001my-key-alias \u306f\u9375\u5225\u540d\u3001**** \u306f\u9375\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>APK\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b\u306b\u306f\u3001\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306eAndroid\u30d5\u30a9\u30eb\u30c0\u30fc\u306b\u79fb\u52d5\u3057\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>.\/gradlew assembleRelease\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001app-release.apk \u3068\u3044\u3046 APK \u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002 \u30d5\u30a1\u30a4\u30eb\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30f3\u30c9\u30ed\u30a4\u30c9\/\u30a2\u30d7\u30ea\/\u30d3\u30eb\u30c9\/\u51fa\u529b\/apk\/\u30ea\u30ea\u30fc\u30b9\u30d5\u30a9\u30eb\u30c0\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u306b\u7f72\u540d\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>APK\u30d5\u30a1\u30a4\u30eb\u306b\u7f72\u540d\u3059\u308b\u306b\u306f\u3001\u4ee5\u524d\u306b\u751f\u6210\u3055\u308c\u305f\u7f72\u540d\u30ad\u30fc\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001APK\u30d5\u30a1\u30a4\u30eb\u306b\u7f72\u540d\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore app-release-unsigned.apk my-key-alias\n<\/code><\/pre>\n\n\n\n<p>\u305d\u306e\u4e2d\u3067\u3001my-release-key.keystore \u306f\u4ee5\u524d\u306b\u751f\u6210\u3055\u308c\u305f\u7f72\u540d\u30ad\u30fc\u306e\u30ad\u30fc\u30b9\u30c8\u30a2\u30d5\u30a1\u30a4\u30eb\u540d\u3001app-release-unsigned .apk\u306f\u4ee5\u524d\u306b\u751f\u6210\u3055\u308c\u305f\u7f72\u540d\u3055\u308c\u3066\u3044\u306a\u3044 APK \u30d5\u30a1\u30a4\u30eb\u540d\u3001my-key-alias \u306f\u30ad\u30fc\u30a8\u30a4\u30ea\u30a2\u30b9\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u3092\u63c3\u3048\u308b<\/li>\n<\/ol>\n\n\n\n<p>APK\u30d5\u30a1\u30a4\u30eb\u3092\u6574\u5217\u3059\u308b\u306b\u306f\u3001zipalign\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u3067\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3001APK\u30d5\u30a1\u30a4\u30eb\u3092\u6574\u5217\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">arduinoCopy code<code>zipalign -v 4 app-release-unsigned.apk my-app-release.apk\n<\/code><\/pre>\n\n\n\n<p>\u305d\u306e\u4e2d\u3067\u3001app-release-unsigned .apk\u306f\u4ee5\u524d\u306b\u751f\u6210\u3055\u308c\u305f\u7f72\u540d\u3055\u308c\u3066\u3044\u306a\u3044 APK \u30d5\u30a1\u30a4\u30eb\u540d\u3067\u3042\u308a\u3001my-app-release .apk\u306f\u7f72\u540d\u3055\u308c\u3001\u6574\u5217\u3055\u308c\u305f APK \u30d5\u30a1\u30a4\u30eb\u540d\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u3092\u516c\u958b\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u6700\u5f8c\u306b\u3001\u751f\u6210\u3055\u308c\u305fAPK\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u307e\u305f\u306f\u4ed6\u306e\u516c\u958b\u30c1\u30e3\u30cd\u30eb\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 APK\u30d5\u30a1\u30a4\u30eb\u3092\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4fdd\u8b77\u3059\u308b\u305f\u3081\u306b\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u884c\u3046\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>APK\u30d5\u30a1\u30a4\u30eb\u3092\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u3055\u307e\u3056\u307e\u306a\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u3067\u6b63\u3057\u304f\u6a5f\u80fd\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u305f\u3081\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u5b9f\u65bd\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>APK\u30d5\u30a1\u30a4\u30eb\u3092\u516c\u958b\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u306e\u30a2\u30a4\u30b3\u30f3\u3001\u30a2\u30d7\u30ea\u540d\u3001\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3082\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u60c5\u5831\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e Android\/App\/Src\/Main\/Res \u30d5\u30a9\u30eb\u30c0\u30fc\u5185\u306e\u3055\u307e\u3056\u307e\u306a\u30d5\u30a9\u30eb\u30c0\u30fc\u306b\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u307e\u305f\u3001Google Play \u30b3\u30f3\u30bd\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u3092\u516c\u958b\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 Google Play Console \u3067\u306f\u3001APK \u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u308a\u3001\u30a2\u30d7\u30ea\u306e\u4fa1\u683c\u3068\u516c\u958b\u8a2d\u5b9a\u3092\u884c\u3063\u305f\u308a\u3001\u30a2\u30d7\u30ea\u306e\u8a73\u7d30\u3084\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092\u8868\u793a\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002 Google Play \u30b3\u30f3\u30bd\u30fc\u30eb\u3067\u30a2\u30d7\u30ea\u306e\u30ea\u30ea\u30fc\u30b9 \u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u3092\u8a2d\u5b9a\u3057\u3001\u30a2\u30d7\u30ea\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u6570\u3084\u8a55\u4fa1\u3092\u8ffd\u8de1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u767a\u884c\u3057\u305f\u5f8c\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u78ba\u8a8d\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30bf\u30a4\u30e0\u30ea\u30fc\u306b\u66f4\u65b0\u3057\u3066\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 Google Analytics\u306a\u3069\u306e\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u306e\u4f7f\u7528\u72b6\u6cc1\u3092\u8ffd\u8de1\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u884c\u52d5\u3084\u597d\u307f\u306b\u95a2\u3059\u308b\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u3001\u30a2\u30d7\u30ea\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u516c\u958b\u306b\u306f\u3001\u7f72\u540d\u30ad\u30fc\u306e\u751f\u6210\u3001gradle\u30d5\u30a1\u30a4\u30eb\u306e\u8a2d\u5b9a\u3001APK\u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210\u3001APK\u30d5\u30a1\u30a4\u30eb\u306e\u7f72\u540d\u3001APK\u30d5\u30a1\u30a4\u30eb\u306e\u6574\u5217\u3001APK\u30d5\u30a1\u30a4\u30eb\u306e\u516c\u958b\u306a\u3069\u3001\u3044\u304f\u3064\u304b\u306e\u5fc5\u8981\u306a\u624b\u9806\u304c\u5fc5\u8981\u3067\u3059\u3002 APK\u30d5\u30a1\u30a4\u30eb\u3092\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u524d\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u884c\u3044\u3001\u30a2\u30d7\u30ea\u306e\u30a2\u30a4\u30b3\u30f3\u3001\u30a2\u30d7\u30ea\u540d\u3001\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 Google Play \u30b3\u30f3\u30bd\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u3092\u516c\u958b\u3057\u3001\u30a2\u30d7\u30ea\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3055\u308c\u305fiOS\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3ChatGPT\u3092\u30cd\u30a4\u30c6\u30a3\u30d6\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3057\u3066\u516c\u958b\u3059\u308bReact\u30cd\u30a4\u30c6\u30a3\u30d6\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3068\u516c\u958b\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u672c\u756a\u74b0\u5883\u306b\u30c7\u30d7\u30ed\u30a4\u3059\u308b\u305f\u3081\u306e\u91cd\u8981\u306a\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 React \u30cd\u30a4\u30c6\u30a3\u30d6\u3067 iOS \u30a2\u30d7\u30ea\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3057\u3066\u516c\u958b\u3059\u308b\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210<\/li>\n<\/ol>\n\n\n\n<p>iOS \u3067\u306f\u3001\u30a2\u30d7\u30ea\u306e\u7f72\u540d\u306b\u4f7f\u7528\u3067\u304d\u308b\u30a2\u30d7\u30ea\u306e\u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306f\u3001Apple \u30c7\u30d9\u30ed\u30c3\u30d1\u30fc\u30bb\u30f3\u30bf\u30fc\u3067\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002 \u516c\u5f0f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306e\u624b\u9806\u306b\u5f93\u3063\u3066\u3001\u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Xcode \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u69cb\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30d1\u30d6\u30ea\u30c3\u30b7\u30e5\u53ef\u80fd\u306a IPA \u30d5\u30a1\u30a4\u30eb\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b\u306b\u306f\u3001Xcode \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u3044\u304f\u3064\u304b\u306e\u69cb\u6210\u304c\u5fc5\u8981\u3067\u3059\u3002 \u3053\u308c\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e.xcodeproj\u30d5\u30a1\u30a4\u30eb\u3067\u69cb\u6210\u3067\u304d\u307e\u3059\u3002 \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3068\u8a3c\u660e\u66f8\u3092\u8ffd\u52a0\u3057\u3066\u69cb\u6210\u3067\u304d\u307e\u3059\u3002 \u30d0\u30f3\u30c9\u30ebID\u3001\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u30d3\u30eb\u30c9\u756a\u53f7\u306a\u3069\u306e\u4ed6\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u3001Xcode\u306e\u300c\u30d3\u30eb\u30c9\u8a2d\u5b9a\u300d\u3067\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>IPA \u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>IPA\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b\u306b\u306f\u3001Xcode\u306e[\u88fd\u54c1]\u30e1\u30cb\u30e5\u30fc\u3067[\u30a2\u30fc\u30ab\u30a4\u30d6]\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3057\u307e\u3059\u3002 Xcode\u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u30d3\u30eb\u30c9\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u542b\u3080\u30a2\u30fc\u30ab\u30a4\u30d6\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002 \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3067\u3001[\u30a2\u30d7\u30ea\u306e\u914d\u5e03]\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3057\u3001[\u30a2\u30c9\u30db\u30c3\u30af]\u307e\u305f\u306f[\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2]\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3067\u304d\u307e\u3059\u3002 \u516c\u958b\u3059\u308b\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3068\u8a3c\u660e\u66f8\u3092\u9078\u629e\u3057\u3001IPA \u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>IPA\u30d5\u30a1\u30a4\u30eb\u306e\u516c\u958b<\/li>\n<\/ol>\n\n\n\n<p>\u6700\u5f8c\u306b\u3001\u7d50\u679c\u306eIPA\u30d5\u30a1\u30a4\u30eb\u3092App Store Connect\u307e\u305f\u306f\u4ed6\u306e\u516c\u958b\u30c1\u30e3\u30cd\u30eb\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 IPA\u30d5\u30a1\u30a4\u30eb\u3092\u516c\u958b\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u3055\u307e\u3056\u307e\u306a\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u3067\u6b63\u3057\u304f\u52d5\u4f5c\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u305f\u3081\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u5b9f\u65bd\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>IPA \u30d5\u30a1\u30a4\u30eb\u3092\u516c\u958b\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a2\u30a4\u30b3\u30f3\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u540d\u3001\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3082\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u60c5\u5831\u306f\u3001Xcode\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u300c\u4e00\u822c\u300d\u30bf\u30d6\u3067\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>App Store Connect \u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u516c\u958b\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 App Store Connect \u3067\u306f\u3001IPA \u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u308a\u3001App \u306e\u4fa1\u683c\u3084\u516c\u958b\u8a2d\u5b9a\u3092\u884c\u3063\u305f\u308a\u3001App \u306e\u8a73\u7d30\u3084\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092\u63d0\u4f9b\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002 App Store Connect \u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ea\u30ea\u30fc\u30b9\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u3092\u8a2d\u5b9a\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u6570\u3068\u8a55\u4fa1\u3092\u8ffd\u8de1\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u767a\u884c\u3057\u305f\u5f8c\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u78ba\u8a8d\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30bf\u30a4\u30e0\u30ea\u30fc\u306b\u66f4\u65b0\u3057\u3066\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 App Store Connect \u3084\u305d\u306e\u4ed6\u306e\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u306e\u4f7f\u7528\u72b6\u6cc1\u3092\u8ffd\u8de1\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u884c\u52d5\u3084\u597d\u307f\u306b\u95a2\u3059\u308b\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u3001\u30a2\u30d7\u30ea\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u516c\u958b\u306b\u306f\u3001\u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210\u3001Xcode \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u69cb\u6210\u3001IPA \u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210\u3001IPA \u30d5\u30a1\u30a4\u30eb\u306e\u516c\u958b\u306a\u3069\u3001\u3044\u304f\u3064\u304b\u306e\u5fc5\u8981\u306a\u624b\u9806\u304c\u5fc5\u8981\u3067\u3059\u3002 IPA \u30d5\u30a1\u30a4\u30eb\u3092\u30d1\u30d6\u30ea\u30c3\u30b7\u30e5\u3059\u308b\u524d\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u884c\u3044\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a2\u30a4\u30b3\u30f3\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u540d\u3001\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 App Store Connect \u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u3092\u516c\u958b\u3057\u3001\u30a2\u30d7\u30ea\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>React Native\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3055\u308c\u3001\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2ChatGPT\u306b\u516c\u958b\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native \u3067\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b\u3053\u3068\u304c\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u672c\u756a\u74b0\u5883\u306b\u30c7\u30d7\u30ed\u30a4\u3059\u308b\u6700\u5f8c\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 React Native \u30a2\u30d7\u30ea\u3092\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b\u4e00\u822c\u7684\u306a\u624b\u9806\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u516c\u958b\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u7f72\u540d\u3059\u308b\u305f\u3081\u306e\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 keytool \u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3067\u304d\u307e\u3059\u3002 \u7f72\u540d\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b\u306b\u306f\u3001\u30b3\u30de\u30f3\u30c9 \u30e9\u30a4\u30f3\u304b\u3089\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">vbnetCopy code<code>keytool -genkey -v -keystore my-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000\n<\/code><\/pre>\n\n\n\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u304d\u306f\u3001\u9375\u30b9\u30c8\u30a2\u306e\u540d\u524d\u3001\u5225\u540d\u3001\u6709\u52b9\u671f\u9593\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u3092\u8a2d\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u767a\u884c\u3059\u308b\u3068\u304d\u306b\u4f7f\u7528\u3067\u304d\u308b\u7f72\u540d\u30ad\u30fc \u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>gradle \u30d5\u30a1\u30a4\u30eb\u3092\u69cb\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React Native\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u524d\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u6b63\u3057\u304f\u30d3\u30eb\u30c9\u304a\u3088\u3073\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3067\u304d\u308b\u3088\u3046\u306b\u3001gradle\u30d5\u30a1\u30a4\u30eb\u306b\u3044\u304f\u3064\u304b\u306e\u8a2d\u5b9a\u3082\u5fc5\u8981\u3067\u3059\u3002 \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u756a\u53f7\u3001\u7f72\u540d\u30ad\u30fc\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u306f\u3001\u30a2\u30f3\u30c9\u30ed\u30a4\u30c9\/\u30a2\u30d7\u30ea\/\u30d3\u30eb\u30c9.gradle \u30d5\u30a1\u30a4\u30eb\u3067\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3092 gradle \u30d5\u30a1\u30a4\u30eb\u306b\u8ffd\u52a0\u3057\u3066\u3001\u7f72\u540d\u30ad\u30fc\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sqlCopy code<code>android {\n    ...\n    defaultConfig {\n        ...\n        signingConfigs {\n            release {\n                storeFile file(\"my-key.keystore\")\n                storePassword \"my-key-password\"\n                keyAlias \"my-key-alias\"\n                keyPassword \"my-key-alias-password\"\n            }\n        }\n        ...\n    }\n    buildTypes {\n        release {\n            ...\n            signingConfig signingConfigs.release\n        }\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>gradle \u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u524d\u306b\u3001\u7f72\u540d\u30ad\u30fc \u30d5\u30a1\u30a4\u30eb\u3092\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e Android\/app \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u30b3\u30d4\u30fc\u3059\u308b\u5fc5\u8981\u3082\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>React Native \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u516c\u958b\u53ef\u80fd\u306a APK \u30d5\u30a1\u30a4\u30eb\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3059\u308b\u306b\u306f\u3001\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u304b\u3089\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>.\/gradlew assembleRelease\n<\/code><\/pre>\n\n\n\n<p>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30f3\u30c9\u30ed\u30a4\u30c9\/\u30a2\u30d7\u30ea\/\u30d3\u30eb\u30c9\/\u51fa\u529b\/apk\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u7f72\u540d\u4ed8\u304dAPK\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>APK\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b<\/li>\n<\/ol>\n\n\n\n<p>\u6700\u5f8c\u306b\u3001\u751f\u6210\u3055\u308c\u305fAPK\u30d5\u30a1\u30a4\u30eb\u3092Google Play\u307e\u305f\u306f\u4ed6\u306e\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 APK\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u524d\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u5b9f\u65bd\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u3055\u307e\u3056\u307e\u306a\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u3067\u6b63\u3057\u304f\u6a5f\u80fd\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 APK\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u304d\u306f\u3001\u30a2\u30d7\u30ea\u306e\u4fa1\u683c\u3001\u53ef\u8996\u6027\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u3082\u8a2d\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 Google Play Console \u307e\u305f\u306f\u4ed6\u306e\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306e\u30c7\u30d9\u30ed\u30c3\u30d1\u30fc \u30b3\u30f3\u30bd\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3001\u7ba1\u7406\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u767a\u884c\u3057\u305f\u5f8c\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u78ba\u8a8d\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u30bf\u30a4\u30e0\u30ea\u30fc\u306b\u66f4\u65b0\u3057\u3066\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 Google Analytics\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u4f7f\u7528\u3092\u8ffd\u8de1\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u884c\u52d5\u3068\u597d\u307f\u306b\u95a2\u3059\u308b\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u6700\u9069\u5316\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u8981\u7d04\u3059\u308b\u3068\u3001React Native\u30a2\u30d7\u30ea\u3092\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b\u306b\u306f\u5c11\u3057\u5fc5\u8981\u3067\u3059<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>\u7f72\u540d\u30ad\u30fc\u306e\u751f\u6210\u3001gradle\u30d5\u30a1\u30a4\u30eb\u306e\u69cb\u6210\u3001APK\u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210\u3001\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u3078\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u306a\u3069\u3001\u5fc5\u8981\u306a\u624b\u9806\u3068\u69cb\u6210\u3002 \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u767a\u884c\u3059\u308b\u524d\u306b\u3001\u5fb9\u5e95\u7684\u306a\u30c6\u30b9\u30c8\u3092\u5b9f\u65bd\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u3055\u307e\u3056\u307e\u306a\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u3067\u6b63\u3057\u304f\u52d5\u4f5c\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u3082\u3042\u308a\u307e\u3059\u3002 \u30a2\u30d7\u30ea\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u304d\u306f\u3001\u30a2\u30d7\u30ea\u306e\u4fa1\u683c\u3001\u53ef\u8996\u6027\u3001\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u3082\u8a2d\u5b9a\u3057\u3001\u30a2\u30d7\u30ea\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5b89\u5b9a\u6027\u3092\u5b9a\u671f\u7684\u306b\u30c1\u30a7\u30c3\u30af\u3057\u3066\u3001\u30a2\u30d7\u30ea\u3092\u30bf\u30a4\u30e0\u30ea\u30fc\u306b\u66f4\u65b0\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>React Native\u30a2\u30d7\u30ea\u3092iOS\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b\u30d7\u30ed\u30bb\u30b9\u306f\u3001Google Play\u3084\u4ed6\u306eAndroid\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u516c\u958b\u3059\u308b\u30d7\u30ed\u30bb\u30b9\u3068\u306f\u5c11\u3057\u7570\u306a\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 React Native \u30a2\u30d7\u30ea\u3092 iOS App Store \u306b\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u524d\u306b\u3001\u3044\u304f\u3064\u304b\u306e\u8ffd\u52a0\u306e\u69cb\u6210\u3068\u30c6\u30b9\u30c8\u304c\u5fc5\u8981\u3067\u3042\u308a\u3001Xcode \u3092\u4f7f\u7528\u3057\u3066\u30a2\u30d7\u30ea\u3092\u30d3\u30eb\u30c9\u3057\u3066\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3057\u307e\u3059\u3002 Apple \u30c7\u30d9\u30ed\u30c3\u30d1\u30fc\u30bb\u30f3\u30bf\u30fc\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 ID \u3092\u4f5c\u6210\u3057\u3001Xcode \u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u7f72\u540d\u304a\u3088\u3073\u691c\u8a3c\u3059\u308b\u305f\u3081\u306e\u8a3c\u660e\u66f8\u3068\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3067\u304d\u307e\u3059\u3002 Xcode\u306e\u300c\u30a2\u30fc\u30ab\u30a4\u30d6\u300d\u6a5f\u80fd\u3092\u4f7f\u7528\u3057\u3066\u7f72\u540d\u3055\u308c\u305fIPA\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u3001\u305d\u308c\u3092App Store Connect\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u30ec\u30d3\u30e5\u30fc\u3068\u516c\u958b\u3092\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30a2\u30d7\u30ea\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u304d\u306f\u3001\u30a2\u30d7\u30ea\u306e\u4fa1\u683c\u3001\u516c\u958b\u8a2d\u5b9a\u3001\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u3092\u8a2d\u5b9a\u3057\u3001Apple\u306e\u30a2\u30d7\u30ea\u30ec\u30d3\u30e5\u30fc\u30dd\u30ea\u30b7\u30fc\u3068\u30ac\u30a4\u30c9\u30e9\u30a4\u30f3\u3092\u9075\u5b88\u3059\u308b\u5fc5\u8981\u3082\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d50\u8ad6\u3068\u3057\u3066\u3001React Native\u30a2\u30d7\u30ea\u3092\u30a2\u30d7\u30ea\u30b9\u30c8\u30a2\u306b\u30ea\u30ea\u30fc\u30b9\u3059\u308b\u306b\u306f\u3001\u614e\u91cd\u306a\u8a08\u753b\u3068\u6e96\u5099\u3001\u304a\u3088\u3073\u95a2\u9023\u3059\u308b\u898f\u5236\u3068\u8981\u4ef6\u306e\u53b3\u683c\u306a\u9075\u5b88\u304c\u5fc5\u8981\u3067\u3059\u3002 \u9069\u5207\u306a\u69cb\u6210\u3068\u30c6\u30b9\u30c8\u3001\u304a\u3088\u3073\u7d99\u7d9a\u7684\u306a\u6700\u9069\u5316\u3068\u66f4\u65b0\u306b\u3088\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u3001\u30e6\u30fc\u30b6\u30fc\u3068\u30d3\u30b8\u30cd\u30b9\u306e\u6a5f\u4f1a\u3092\u5897\u3084\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 React \u30cd\u30a4\u30c6\u30a3\u30d6 \u5b9f\u8df5\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u7d39\u4ecb\u3068\u8981\u4ef6\u5206\u6790 ChatGPT<\/p>\n\n\n\n<p>React Native Practical Project\u306f\u3001\u958b\u767a\u8005\u304c\u5b9f\u7528\u7684\u304b\u3064\u5b9f\u8df5\u7684\u306a\u958b\u767a\u7d4c\u9a13\u3092\u901a\u3058\u3066React Native\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3092\u5b66\u3073\u3001\u7fd2\u5f97\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u3053\u3068\u3092\u76ee\u7684\u3068\u3057\u305f\u5b8c\u5168\u306a\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u3059\u3002 \u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306f\u3001\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30e9\u30af\u30b7\u30e7\u30f3\u3001\u30c7\u30fc\u30bf\u7ba1\u7406\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u3001\u516c\u958b\u306a\u3069\u306e\u8907\u6570\u306e\u5074\u9762\u3092\u30ab\u30d0\u30fc\u3067\u304d\u308b\u305f\u3081\u3001\u958b\u767a\u8005\u306fReact Native\u306e\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3068\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b8c\u5168\u306b\u7406\u89e3\u3057\u3066\u7fd2\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u8981\u4ef6\u5206\u6790\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u76ee\u6a19\u3001\u6a5f\u80fd\u3001\u8981\u4ef6\u3001\u304a\u3088\u3073\u30e6\u30fc\u30b6\u30fc\u306e\u30cb\u30fc\u30ba\u3068\u5e02\u5834\u52d5\u5411\u3092\u6c7a\u5b9a\u3059\u308b\u305f\u3081\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u958b\u767a\u306e\u91cd\u8981\u306a\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 React Native\u30cf\u30f3\u30ba\u30aa\u30f3\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u8003\u3048\u3089\u308c\u308b\u30cb\u30fc\u30ba\u5206\u6790\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u7a2e\u985e: \u30bd\u30fc\u30b7\u30e3\u30eb \u30cd\u30c3\u30c8\u30ef\u30fc\u30ad\u30f3\u30b0 \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3001\u96fb\u5b50\u5546\u53d6\u5f15\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3001\u307e\u305f\u306f\u305d\u306e\u4ed6\u306e\u7a2e\u985e\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u3055\u307e\u3056\u307e\u306a\u30e6\u30fc\u30b6\u30fc\u306e\u30cb\u30fc\u30ba\u3092\u6e80\u305f\u3059\u305f\u3081\u306b\u958b\u767a\u3067\u304d\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30e6\u30fc\u30b6\u30fc\u306e\u30b5\u30a4\u30f3\u30a2\u30c3\u30d7\u3068\u30b5\u30a4\u30f3\u30a4\u30f3: \u30e6\u30fc\u30b6\u30fc\u304c\u81ea\u5206\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u4f5c\u6210\u304a\u3088\u3073\u7ba1\u7406\u3057\u3001\u4ed6\u306e\u30e6\u30fc\u30b6\u30fc\u3068\u5bfe\u8a71\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u30b5\u30a4\u30f3\u30a2\u30c3\u30d7\u3068\u30b5\u30a4\u30f3\u30a4\u30f3\u6a5f\u80fd\u3092\u63d0\u4f9b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30c7\u30b6\u30a4\u30f3:\u512a\u308c\u305f\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3068\u4f7f\u3044\u3084\u3059\u3055\u3092\u63d0\u4f9b\u3059\u308b\u305f\u3081\u306b\u3001\u30e2\u30c0\u30f3\u3067\u76f4\u611f\u7684\u306a\u30e6\u30fc\u30b6\u30fc\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30c7\u30b6\u30a4\u30f3\u3092\u63a1\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c7\u30fc\u30bf\u7ba1\u7406: \u30e6\u30fc\u30b6\u30fc\u30c7\u30fc\u30bf\u3084\u305d\u306e\u4ed6\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u304a\u3088\u3073\u53d6\u5f97\u3059\u308b\u306b\u306f\u3001SQLite\u3001Firebase\u3001\u305d\u306e\u4ed6\u306e\u30af\u30e9\u30a6\u30c9\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d3\u30b9\u306a\u3069\u306e\u9069\u5207\u306a\u30c7\u30fc\u30bf\u30b9\u30c8\u30ec\u30fc\u30b8\u304a\u3088\u3073\u7ba1\u7406\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30e1\u30c3\u30bb\u30fc\u30b8\u901a\u77e5: \u30e1\u30c3\u30bb\u30fc\u30b8\u901a\u77e5\u6a5f\u80fd\u3092\u63d0\u4f9b\u3057\u3066\u3001\u30e6\u30fc\u30b6\u30fc\u304c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5185\u306e\u65b0\u3057\u3044\u30e1\u30c3\u30bb\u30fc\u30b8\u3068\u30a2\u30af\u30c6\u30a3\u30d3\u30c6\u30a3\u3092\u5e38\u306b\u901a\u77e5\u3055\u308c\u308b\u3088\u3046\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3: \u30e6\u30fc\u30b6\u30fc\u304c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u3055\u307e\u3056\u307e\u306a\u30da\u30fc\u30b8\u3084\u6a5f\u80fd\u3092\u7c21\u5358\u306b\u30ca\u30d3\u30b2\u30fc\u30c8\u3057\u3066\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u9069\u5207\u306a\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3092\u63d0\u4f9b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316: \u9069\u5207\u306a\u30b3\u30fc\u30c9\u306e\u6700\u9069\u5316\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9 \u30c6\u30b9\u30c8\u306b\u5408\u683c\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u9593\u3067\u6b63\u3057\u304f\u52d5\u4f5c\u3057\u3001\u512a\u308c\u305f\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u516c\u958b\u3068\u5c55\u958b: \u30a2\u30d7\u30ea\u306f\u3001Fastlane \u3084 App Store Connect \u306a\u3069\u306e\u9069\u5207\u306a\u30c4\u30fc\u30eb\u3068\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3092\u4f7f\u7528\u3057\u3066\u3001Google Play \u307e\u305f\u306f\u4ed6\u306e\u30a2\u30d7\u30ea \u30b9\u30c8\u30a2\u3067\u516c\u958b\u304a\u3088\u3073\u5c55\u958b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0a\u8a18\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u7279\u5b9a\u306e\u6761\u4ef6\u3068\u8981\u4ef6\u306b\u5fdc\u3058\u3066\u8abf\u6574\u304a\u3088\u3073\u6700\u9069\u5316\u3055\u308c\u308b\u3001\u53ef\u80fd\u306aReact Native\u306e\u5b9f\u969b\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u8981\u4ef6\u5206\u6790\u306e\u4f8b\u3067\u3059\u3002 \u8981\u4ef6\u306e\u5206\u6790\u3068\u8a08\u753b\u3092\u901a\u3058\u3066\u3001React Native\u306e\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30b9\u30e0\u30fc\u30ba\u306a\u958b\u767a\u3068\u30ea\u30ea\u30fc\u30b9\u306e\u6210\u529f\u3092\u4fdd\u8a3c\u3057\u3001\u30e6\u30fc\u30b6\u30fc\u306b\u9ad8\u54c1\u8cea\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u8a73\u3057\u304f\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044 \u53cd\u5fdc \u30cd\u30a4\u30c6\u30a3\u30d6 \u5b9f\u7528 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3 \u30c7\u30b6\u30a4\u30f3 ChatGPT<\/p>\n\n\n\n<p>React Native\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u958b\u767a\u306e\u57fa\u76e4\u3067\u3042\u308a\u3001\u512a\u308c\u305f\u7d44\u7e54\u69cb\u9020\u3092\u63d0\u4f9b\u3057\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30b3\u30fc\u30c9\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u7dad\u6301\u3068\u62e1\u5f35\u304c\u5bb9\u6613\u3067\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3001\u4fe1\u983c\u6027\u306e\u30cb\u30fc\u30ba\u3092\u6e80\u305f\u3059\u3053\u3068\u3092\u76ee\u7684\u3068\u3057\u3066\u3044\u307e\u3059\u3002 \u53ef\u80fd\u306aReact Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u306e\u3044\u304f\u3064\u304b\u306e\u8981\u7d20\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u8a2d\u8a08:\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30cb\u30fc\u30ba\u3068\u6a5f\u80fd\u306b\u5fdc\u3058\u3066\u3001UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u30c7\u30fc\u30bf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u305d\u306e\u4ed6\u306e\u6a5f\u80fd\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306a\u3069\u3001\u9069\u5207\u306a\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u3001\u518d\u5229\u7528\u53ef\u80fd\u3067\u3001\u62e1\u5f35\u53ef\u80fd\u3067\u3001\u3055\u307e\u3056\u307e\u306a\u30b7\u30ca\u30ea\u30aa\u3067\u4f7f\u7528\u3059\u308b\u305f\u3081\u306b\u69cb\u6210\u53ef\u80fd\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u72b6\u614b\u7ba1\u7406\u306e\u8a2d\u8a08: Redux \u3084 MobX \u306a\u3069\u306e\u9069\u5207\u306a\u72b6\u614b\u7ba1\u7406\u30c6\u30af\u30ce\u30ed\u30b8\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u72b6\u614b\u3068\u30c7\u30fc\u30bf \u30d5\u30ed\u30fc\u3092\u7ba1\u7406\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u306e\u72b6\u614b\u3068\u30c7\u30fc\u30bf\u306f\u3001\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3068\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u3088\u3063\u3066\u5171\u6709\u304a\u3088\u3073\u7ba1\u7406\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u3001\u8981\u4ef6\u306b\u5fdc\u3058\u3066\u6700\u9069\u5316\u304a\u3088\u3073\u66f4\u65b0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u8a2d\u8a08: React Navigation \u3084\u305d\u306e\u4ed6\u306e\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30d6\u30e9\u30ea\u306a\u3069\u306e\u9069\u5207\u306a\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30c6\u30af\u30ce\u30ed\u30b8\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u304a\u3088\u3073\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3068\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u306f\u3001\u512a\u308c\u305f\u4fdd\u5b88\u6027\u3068\u30b9\u30b1\u30fc\u30e9\u30d3\u30ea\u30c6\u30a3\u3092\u63d0\u4f9b\u3059\u308b\u305f\u3081\u306b\u30ab\u30d7\u30bb\u30eb\u5316\u304a\u3088\u3073\u7de8\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>API \u8a2d\u8a08: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c7\u30fc\u30bf\u53d6\u5f97\u3068\u7ba1\u7406\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u3088\u3046\u306b\u3001\u9069\u5207\u306a API \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3068\u30b5\u30fc\u30d3\u30b9\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e API \u306f\u3001\u30c7\u30fc\u30bf \u30b9\u30c8\u30ec\u30fc\u30b8\u304a\u3088\u3073\u7ba1\u7406\u30c6\u30af\u30ce\u30ed\u30b8\u3068\u7d71\u5408\u3057\u3001\u5341\u5206\u306b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3067\u4fdd\u8b77\u3055\u308c\u3001\u30b9\u30b1\u30fc\u30e9\u30d6\u30eb\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u8a2d\u8a08\u306b\u3088\u308b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c7\u30fc\u30bf\u3068\u30e6\u30fc\u30b6\u30fc\u306e\u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u3092\u4fdd\u8b77\u3059\u308b\u305f\u3081\u306b\u3001\u9069\u5207\u306a\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56\u3068\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56\u306b\u306f\u3001\u30c7\u30fc\u30bf\u306e\u6697\u53f7\u5316\u3001\u8a8d\u8a3c\u3001\u30a2\u30af\u30bb\u30b9\u5236\u5fa1\u3001\u305d\u306e\u4ed6\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u6a5f\u80fd\u306a\u3069\u3092\u542b\u3081\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316\u306e\u8a2d\u8a08: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30cb\u30fc\u30ba\u3068\u30e6\u30fc\u30b6\u30fc\u306e\u30cb\u30fc\u30ba\u306b\u5fdc\u3058\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u5fdc\u7b54\u901f\u5ea6\u3092\u5411\u4e0a\u3055\u305b\u308b\u305f\u3081\u306b\u3001\u9069\u5207\u306a\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u6700\u9069\u5316\u624b\u6bb5\u3068\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u306b\u306f\u3001\u30b3\u30fc\u30c9\u306e\u6700\u9069\u5316\u3001\u30ea\u30bd\u30fc\u30b9\u7ba1\u7406\u3001\u30e1\u30e2\u30ea\u306e\u6700\u9069\u5316\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u624b\u6cd5\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c6\u30b9\u30c8\u3068\u30c7\u30d0\u30c3\u30b0\u306e\u8a2d\u8a08: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u30c7\u30d0\u30a4\u30b9\u3084\u74b0\u5883\u9593\u3067\u9069\u5207\u306b\u52d5\u4f5c\u3057\u3001\u554f\u984c\u3092\u8fc5\u901f\u306b\u8a3a\u65ad\u3057\u3066\u89e3\u6c7a\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u9069\u5207\u306a\u30c6\u30b9\u30c8\u3068\u30c7\u30d0\u30c3\u30b0\u306e\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30c6\u30b9\u30c8\u304a\u3088\u3073\u30c7\u30d0\u30c3\u30b0 \u30e1\u30ab\u30cb\u30ba\u30e0\u306b\u306f\u3001\u5358\u4f53\u30c6\u30b9\u30c8\u3001\u7d71\u5408\u30c6\u30b9\u30c8\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9 \u30c6\u30b9\u30c8\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30c6\u30b9\u30c8\u624b\u6cd5\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0a\u8a18\u306f\u3001\u53ef\u80fd\u306aReact Native\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u306e\u3044\u304f\u3064\u304b\u306e\u8981\u7d20\u3067\u3042\u308a\u3001\u7279\u5b9a\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u7279\u5b9a\u306e\u6761\u4ef6\u3068\u8981\u4ef6\u306b\u5fdc\u3058\u3066\u8abf\u6574\u304a\u3088\u3073\u6700\u9069\u5316\u3055\u308c\u307e\u3059\u3002 \u9069\u5207\u306a\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u3068\u6700\u9069\u5316\u306b\u3088\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u54c1\u8cea\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u3001\u30e6\u30fc\u30b6\u30fc\u306b\u3088\u308a\u826f\u3044\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>\u30c1\u30e3\u30c3\u30c8GPT\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"8\">\n<li>\u30e2\u30b8\u30e5\u30fc\u30eb\u8a2d\u8a08:\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u6a5f\u80fd\u3068\u8981\u4ef6\u306b\u5fdc\u3058\u3066\u3001\u9069\u5207\u306a\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8a2d\u8a08\u3057\u3001\u95a2\u9023\u3059\u308b\u30b3\u30fc\u30c9\u3068\u95a2\u6570\u3092\u307e\u3068\u3081\u3066\u3001\u30b3\u30fc\u30c9\u306e\u8aad\u307f\u3084\u3059\u3055\u3068\u4fdd\u5b88\u6027\u3092\u5411\u4e0a\u3055\u305b\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u3001UI \u30e2\u30b8\u30e5\u30fc\u30eb\u3001\u30c7\u30fc\u30bf\u30fb\u30e2\u30b8\u30e5\u30fc\u30eb\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30fb\u30e2\u30b8\u30e5\u30fc\u30eb\u3001\u30b5\u30fc\u30d3\u30b9\u30fb\u30e2\u30b8\u30e5\u30fc\u30eb\u306a\u3069\u306e\u6a5f\u80fd\u306b\u5f93\u3063\u3066\u5206\u5272\u3067\u304d\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u7d71\u4e00\u3055\u308c\u305f\u30b9\u30bf\u30a4\u30eb\u8a2d\u8a08: \u7d71\u4e00\u3055\u308c\u305f\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u30b9\u30bf\u30a4\u30eb\u3068\u30b3\u30fc\u30c9\u4ed5\u69d8\u306f\u3001\u30b3\u30fc\u30c9\u306e\u4e00\u8cab\u6027\u3068\u8aad\u307f\u3084\u3059\u3055\u3092\u7dad\u6301\u3059\u308b\u305f\u3081\u306b\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u30b9\u30bf\u30a4\u30eb\u3068\u4ed5\u69d8\u306b\u306f\u3001\u5909\u6570\u306e\u547d\u540d\u3001\u30b3\u30fc\u30c9\u306e\u30a4\u30f3\u30c7\u30f3\u30c8\u3001\u30b3\u30fc\u30c9\u30b3\u30e1\u30f3\u30c8\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30b3\u30fc\u30c9\u30b9\u30bf\u30a4\u30eb\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u6ce8\u91c8\u306e\u8a2d\u8a08: \u958b\u767a\u8005\u304c\u30b3\u30fc\u30c9\u3068\u6a5f\u80fd\u3092\u7406\u89e3\u3057\u3001\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3068\u62e1\u5f35\u6a5f\u80fd\u306e\u30ac\u30a4\u30c0\u30f3\u30b9\u3092\u63d0\u4f9b\u3059\u308b\u305f\u3081\u306b\u3001\u512a\u308c\u305f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u30b3\u30e1\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u30b3\u30e1\u30f3\u30c8\u306b\u306f\u3001API \u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3001\u30b3\u30fc\u30c9 \u30b3\u30e1\u30f3\u30c8\u3001\u30e6\u30fc\u30b6\u30fc \u30de\u30cb\u30e5\u30a2\u30eb\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30d0\u30fc\u30b8\u30e7\u30f3\u7ba1\u7406\u3068\u30ea\u30ea\u30fc\u30b9\u7ba1\u7406: \u30b3\u30fc\u30c9\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3068\u5c65\u6b74\u3092\u7ba1\u7406\u3059\u308b\u306b\u306f Git \u306a\u3069\u306e\u9069\u5207\u306a\u30d0\u30fc\u30b8\u30e7\u30f3\u7ba1\u7406\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d3\u30eb\u30c9\u3068\u30ea\u30ea\u30fc\u30b9\u306e\u30d7\u30ed\u30bb\u30b9\u3092\u81ea\u52d5\u5316\u3059\u308b\u306b\u306f Fastlane \u306a\u3069\u306e\u9069\u5207\u306a\u30ea\u30ea\u30fc\u30b9\u7ba1\u7406\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0a\u8a18\u306f\u3001\u53ef\u80fd\u306aReact Native\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u306e\u3044\u304f\u3064\u304b\u306e\u8981\u7d20\u3067\u3042\u308a\u3001\u7279\u5b9a\u306e\u8a2d\u8a08\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u7279\u5b9a\u306e\u6761\u4ef6\u3068\u8981\u4ef6\u306b\u5fdc\u3058\u3066\u8abf\u6574\u304a\u3088\u3073\u6700\u9069\u5316\u3055\u308c\u307e\u3059\u3002 \u9069\u5207\u306a\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u8a2d\u8a08\u3068\u6700\u9069\u5316\u306b\u3088\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u54c1\u8cea\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u3001\u30e6\u30fc\u30b6\u30fc\u306b\u3088\u308a\u826f\u3044\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3 \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/edu.ujhb.org\/?p=2348\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"User\"\/><\/figure>\n\n\n\n<p>ChatGPT\u6a5f\u80fd\u306e\u5b9f\u88c5\u306b\u3088\u308bReact Native\u306e\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u6bb5\u968e\u7684\u306b\u8aac\u660e\u3057\u3066\u304f\u3060\u3055\u3044<\/p>\n\n\n\n<p>React Native\u306e\u5b9f\u969b\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u306f\u901a\u5e38\u3001\u8907\u6570\u306e\u6a5f\u80fd\u3068\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u3042\u308a\u3001\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306e\u53ef\u80fd\u306a\u30b9\u30c6\u30c3\u30d7\u30d0\u30a4\u30b9\u30c6\u30c3\u30d7\u306e\u30d7\u30ed\u30bb\u30b9\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f5c\u6210\u3059\u308b:\u307e\u305a\u3001React Native\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u3001UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u30c7\u30fc\u30bf\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3001\u305d\u306e\u4ed6\u306e\u6a5f\u80fd\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3080\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u8a2d\u8a08\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>UI\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306e\u8a2d\u8a08\u3068\u5b9f\u88c5:\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u521d\u671f\u6bb5\u968e\u3067\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30e1\u30a4\u30f3\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3001\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3001\u30ea\u30b9\u30c8\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3001\u304a\u3088\u3073\u305d\u306e\u4ed6\u306e\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u542b\u3080UI\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u8a2d\u8a08\u304a\u3088\u3073\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u3068\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b: React Navigation\u306a\u3069\u306e\u9069\u5207\u306a\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3092\u4f7f\u7528\u3057\u3066\u3001StackNavigator\u3001TabNavigator\u3001DrawerNavigator\u306e\u4f5c\u6210\u306a\u3069\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3\u304a\u3088\u3073\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30c7\u30fc\u30bf\u7ba1\u7406\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b:Redux\u306a\u3069\u306e\u9069\u5207\u306a\u72b6\u614b\u7ba1\u7406\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3092\u4f7f\u7528\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u72b6\u614b\u3068\u30c7\u30fc\u30bf\u30d5\u30ed\u30fc\u306e\u7ba1\u7406\u3001API\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3068\u30b5\u30fc\u30d3\u30b9\u306e\u63d0\u4f9b\u306a\u3069\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c7\u30fc\u30bf\u7ba1\u7406\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30ea\u30af\u30a8\u30b9\u30c8\u3068\u30c7\u30fc\u30bf\u30b9\u30c8\u30ec\u30fc\u30b8\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b:Fetch\u3084Axios\u306a\u3069\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30ea\u30af\u30a8\u30b9\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u4f7f\u7528\u3001AsyncStorage\u3084SQLite\u306a\u3069\u306e\u30c7\u30fc\u30bf\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u4f7f\u7528\u306a\u3069\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30ea\u30af\u30a8\u30b9\u30c8\u3068\u30c7\u30fc\u30bf\u30b9\u30c8\u30ec\u30fc\u30b8\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\u3068\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u5b9f\u88c5\u3059\u308b: \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u52b9\u679c\u3092\u5b9f\u73fe\u3059\u308b\u306b\u306f\u3001TouchableOpacity \u3084 PanResponder \u306a\u3069\u306e\u9069\u5207\u306a\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\u30c6\u30af\u30ce\u30ed\u30b8\u3068\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3084 LayoutAnimation \u306a\u3069\u306e\u9069\u5207\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 \u30c6\u30af\u30ce\u30ed\u30b8\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30ea\u30b9\u30c8\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u3092\u5b9f\u88c5\u3059\u308b:FlatList\u3084SectionList\u306a\u3069\u306e\u30ea\u30b9\u30c8\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u4f7f\u7528\u3084\u3001VirtualizedList\u3084shouldComponentUpdate\u306a\u3069\u306e\u9069\u5207\u306a\u6700\u9069\u5316\u624b\u6cd5\u306e\u4f7f\u7528\u306a\u3069\u3001\u30ea\u30b9\u30c8\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u6700\u9069\u5316\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u5b9f\u88c5\u3059\u308b:\u30cd\u30a4\u30c6\u30a3\u30d6\u30b3\u30fc\u30c9\u3068React Native\u30d6\u30ea\u30c3\u30b8\u30f3\u30b0\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u306e\u4f7f\u7528\u3092\u542b\u3080\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u5b9f\u88c5\u3057\u3066\u3001\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u30e6\u30fc\u30b6\u30fc\u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5411\u4e0a\u3055\u305b\u308b\u30cd\u30a4\u30c6\u30a3\u30d6\u30e2\u30b8\u30e5\u30fc\u30eb\u3068UI\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n\n\n\n<li>\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u304a\u3088\u3073\u516c\u958b\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b: \u6700\u5f8c\u306b\u3001React Native CLI \u3084 Xcode \u306a\u3069\u306e\u30c4\u30fc\u30eb\u306e\u4f7f\u7528\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30d3\u30eb\u30c9\u3068\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3001\u30a2\u30d7\u30ea \u30b9\u30c8\u30a2\u306a\u3069\u306e\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3078\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u767a\u884c\u306a\u3069\u3001\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u304a\u3088\u3073\u516c\u958b\u6a5f\u80fd\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0a\u8a18\u306f\u3001\u53ef\u80fd\u306aReact Native\u5b9f\u7528\u7684\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u6a5f\u80fd\u3092\u5f90\u3005\u306b\u5b9f\u88c5\u3059\u308b\u30d7\u30ed\u30bb\u30b9\u3067\u3042\u308a\u3001\u7279\u5b9a\u306e\u5b9f\u88c5\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u7279\u5b9a\u306e\u6761\u4ef6\u3068\u30cb\u30fc\u30ba\u306b\u5fdc\u3058\u3066\u8abf\u6574\u304a\u3088\u3073\u6700\u9069\u5316\u3055\u308c\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>IT\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30d3\u30c7\u30aa\u3092\u3084\u308a\u305f\u3044\u306e\u3067 &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_mi_skip_tracking":false,"footnotes":""},"categories":[23],"tags":[],"class_list":["post-2380","post","type-post","status-publish","format-standard","hentry","category-material"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/2380","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2380"}],"version-history":[{"count":1,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/2380\/revisions"}],"predecessor-version":[{"id":2381,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/2380\/revisions\/2381"}],"wp:attachment":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2380"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2380"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2380"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}