Question

Can anyone help, i want to change my image(button), when i press my buttonImage i open MT.Dialog and then i login, and when i login i want the button to change how do i do that, i have found the code, but it doesn't work in MT.Dialog Here is how i do it.

    cmdLogin.TouchUpInside += delegate { 
      cmdLogin.SetImage(UIImage.FromFile("Images/Logout.png"), UIControlState.Normal);
    };

and for the hidden thing i tried(But doesn't work)

    if(cmdLogin.Hidden == True)
    {
       cmdLogout.Enabled;
    }else{
       cmdLogout.Hidden;
    }

but that doesn't work in MT.Dialog ofcourse because i don't do anything with my string element(My string element got the name login and if someone got a link to a good login system w/ database that would be very helpful.

and ofcourse here is my MT.Dialog code

    cmdLogin.TouchUpInside += delegate {

            _window.RootViewController = new DialogViewController(new RootElement("Login") {

                    new Section ("B.V. Electronic"){
                    (password = new EntryElement ("Password", "", "", true))
                },
                new Section () {
                    (login = new StringElement ("Login", delegate {
                        if(password.Matches("1234")){

                            GoBackToView();

                        }else{
                            new UIAlertView("Wrong code", "It's the wrong code", null, "Ok", null).Show();

                        }
                    }))
                },
                new Section (){
                    new StringElement ("Cancel", delegate {
                        GoBackToView();
                })
                }


            });
        };
Was it helpful?

Solution

I am not real clear on exactly what you want to do. However, one suggestion I have for you is to look at this:

https://github.com/xamarin/prebuilt-apps/tree/master/FieldService

This is a sample application that was built by Xamarin that has a nice login screen that you could try and get some ideas from. It does not use Monotouch.Dialog for the login screen, so if you want that you can look at this:

http://docs.xamarin.com/recipes/ios/content_controls/tables/create_a_login_window_using_monotouch.dialog

Your code is similar to that, but it looks like you modified it a little.

If you want to change your Login StringElement, you need to modify it, then call Root.Reload(login, UITableViewRowAnimation.Automatic); afterwards. I don't think there is a simple way to just change the background image of a StringElement. You will need to make your own subclass of StringElement and customize the GetCell() routine to. You can refer to this SO question for more ideas on that:

How can I create a custom styled EntryElement with MonoTouch.dialog?

I hope that helps.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top