Tag: 片段

在显示片段时,防止点击活动中的按钮

我在Activity和Fragment之间的交互中遇到问题。 我有一个main Activity并与布局按钮和文本输入活动。 当我在main Activity打开Fragment时,我仍然可以单击Activity一个按钮并再次打开Fragment ,或者在文本输入中输入文本。 我一直在寻找两个小时的帮助,我还没有找到答案! 这就是我如何从Activity打开Fragment : FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); SignUp fragment = new SignUp(); fragmentTransaction.add(R.id.fragment_content, fragment); fragmentTransaction.commit(); 这是图片: 图片

从Kotlin类调用方法

我有一个util Kotlin类,我设置工具栏的标题,隐藏或显示工具栏取决于片段: class MyToolbarUtils() { fun hideToolbar(activity: Activity) { (activity as MainActivity).supportActionBar!!.hide() } fun showToolbar(activity: Activity, tag: String) { setToolbarTitle(tag, activity) (activity as MainActivity).supportActionBar!!.show() } fun setToolbarTitle(tag: String, activity: Activity) { var title = "" when (tag) { "Main_fragment" -> title = activity.resources.getString(R.string.Main_screen) "Add_note" -> title = activity.resources.getString(R.string.Add_note) } activity.title = title } } 如何从Fragment调用showToolbar(…)? […]

kotlin.TypeCastException:null不能转换为非null类型android.support.v7.widget.Toolbar

我是Android新手。 我的问题可能是什么情况? 我试图把我的片段呈现给MainActivity 。 任何建议将有所帮助。 谢谢 主要活动类… class NavigationActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.fragment_schedule) val toolbar = findViewById(R.id.toolbar) as Toolbar setSupportActionBar(toolbar) // setup toolbar toolbar.setNavigationIcon(R.drawable.ic_map) val drawer = findViewById(R.id.drawer_layout) as DrawerLayout val toggle = ActionBarDrawerToggle( this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close) drawer.addDrawerListener(toggle) // navigation drawer toggle.syncState() val navigationView = findViewById(R.id.nav_view) […]

使用多个RecyclerView和其他视图保存/恢复NestedScrollView的状态

更新:这种方法的工作原理,只有保存没有工作,所以我选择了另一种方式来保存这个数组。 在我的布局中,我有一个NestedScrollView和一个LinearLayout,其中包含多个RecyclerViews和其他视图。 布局是在一个片段。 我尝试按照以下方式保存和恢复滚动状态(这是Kotlin,所以不要关于语法): fun NestedScrollView.savePosition(bundle: Bundle?) { bundle?.putIntArray("SCROLL_VIEW_POSITION", intArrayOf(scrollX, scrollY)) } fun NestedScrollView.restorePosition(bundle: Bundle?) { bundle?.getIntArray("SCROLL_VIEW_POSITION")?.let { post { scrollTo(it[0], it[1]) } } } 我在onSaveInstanceState调用第一个函数,在所有RecyclerViews加载其内容之后调用第二个函数。 但它不工作… 有任何想法吗?

我想使用Kotlin在Android中显示DialogFragment

我想显示DialogFragment clicked按钮时,但我有我的代码中的错误错误是在乐趣“显示” 这个我的代码“点击按钮” DialogFragment val pop = alarm_first() val fm = FragmentManager pop.show( fm , "name") 而这个我的片段类为“alarm_first”: class alarm_first : DialogFragment() { override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View { var myView = inflater!!.inflate(R.layout.fragment_alarm_first , container, false) return myView }}

如何传递和从片段和活动android kotlin获得价值

我是新来的kotlin。 任何人都可以指导我如何通过,并从片段和活动中获得价值

Kotlin片段

我有一个简单的活动。 在这个活动中,我想开始一个片段。 但片段不启动。 这是我的活动 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //start Homefragment startHomeFragment() } /** * Create Homefragment */ private fun startHomeFragment() { val homeFragment = fragmentManager.findFragmentByTag(statics.TAG) ?: HomeFragment() fragmentManager.beginTransaction() .replace(R.id.container, homeFragment, statics.TAG) .commit() } 这是我的片段 class HomeFragment : Fragment() { object statics { @JvmField val TAG = "Homefragment" […]

Kotlin 1.1.3-2无法在OnResume Android中实例化片段

我在这里有这个问题: FATAL EXCEPTION: main Process: com.mytest.app, PID: 20586 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mytest.app/com.mytest.app.activities.home.HomeActivity}: android.app.Fragment$InstantiationException: Unable to instantiate fragment com.mytest.app.activities.fragments.MyFragment: make sure class name exists, is public, and has an empty constructor that is public at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2371) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2423) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1342) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:5327) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at […]

xml onClick中的Kotlin不起作用

我学习kotlin,现在对我来说不是一会儿。 我有xml <ImageView android:id="@+id/aries" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10dp" android:tag="1" android:onClick="clickItemHoro" android:src="@drawable/aries" /> 和片段 class ChooseYourHoroscope : Fragment(){ override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { val view = inflater.inflate(R.layout.fragment_welcome_old, container, false) return view; } fun clickItemHoro(v: View?){ Log.e("clickItemHoro", v!!.tag.toString()) } } 当我点击按钮我有错误: 无法在父级或祖先中找到方法clickItemHoro(View)上下文android:onClick属性在视图类android.support.v7.widget.AppCompatImageView上定义了ID为'aries' 为什么发生? 代码变化简单,但它不工作,我不明白为什么