Форум программистов, компьютерный форум, киберфорум
Наши страницы

Xamarin & UITableViewCell - Xamarin

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Xamarin Xamarin & UIButton http://www.cyberforum.ru/xamarin/thread937470.html
Всем доброго времени суток. Вопрос состоит в том что у меня есть кнопка у нее два состояния InActive/Active. Когда она не активна на ней одна картинка, а когда активна другая?Активность изменяется...
Xamarin Как делать Dismiss Keyboard на UITextView? Доброго всем времени суток. Мне "повезло" я сел писать на Xamarin(C#) под iOS есть несколько вопросов. 1) Нужно сделать UITableView так чтобы получилось картинка слева а запись справа которая в... http://www.cyberforum.ru/xamarin/thread935423.html
Xamarin MonoGame Android project
Всем доброго времени суток, недавно мне понадобилось портировать WP7 игру на Android, я много слышал про такую платформу как MonoGame но никогда ещё ею не пользовался. Первым делом я установил...
New Xamarin Studio Xamarin
Кто-нибудь использовал новую Xamarin Studio для Android проектов какие впечатления? http://blog.xamarin.com/announcing-xamarin-2.0/ http://xamarin.com/studio
Xamarin Окно о необходимости регистрации http://www.cyberforum.ru/xamarin/thread794784.html
Доброго дня ! Моё первое знакомство с к Xamarin, в режиме Starter Edition при попытках скомпилировать код постоянно выскакивает окно о необходимости регистрации, жму соответственно Use Starter...
Xamarin Русскоязычная документация для MonoTouch 4 Android есть желание программировать для Андроида, используя Моно (MonoDroid, если я не ошибаюсь) собственно, с установками и запуском проблем не наблюдалось, интересует то, есть ли русскоязычная дока,... подробнее

Показать сообщение отдельно
Auron
2 / 2 / 0
Регистрация: 11.05.2013
Сообщений: 99
20.08.2013, 14:37  [ТС]
вот класс History Screen
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
namespace testiOS
{
    public class TableSource : UITableViewSource
    {
        string[] tableItems;
        string cellIdentifier = "TableCell";
        public UITableViewCell cell;
        PostScreen postScreen = new PostScreen ();
 
        public TableSource(string[] items)
        {
            tableItems = items;
        }
 
        public override int RowsInSection(UITableView tableView, int section)
        {
            return tableItems.Length;
        }
 
        public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
        {
            new UIAlertView("Row Selected", tableItems[indexPath.Row], null, "OK", null).Show();
            tableView.DeselectRow (indexPath, true); // normal iOS behaviour is to remove the blue highlight
        }
 
        public override UITableViewCell GetCell(UITableView tableView, MonoTouch.Foundation.NSIndexPath indexPath)
        {
            postScreen = new PostScreen ();
            cell = tableView.DequeueReusableCell (cellIdentifier);
 
            // if there are no cells to reuse, create a new one
            if (cell == null)
                cell = new UITableViewCell (UITableViewCellStyle.Default, cellIdentifier);
                cell.TextLabel.Text = tableItems[indexPath.Row];
                cell.TextLabel.Lines = 0;
                cell.TextLabel.LineBreakMode = UILineBreakMode.WordWrap ;
            if (postScreen.flagApprove == true) {
                cell.TextLabel.TextColor = UIColor.Red;
                Console.WriteLine ("HSflagApprove = " + postScreen.flagApprove.ToString());
            } else {
                Console.WriteLine ("HSflagApprove = "  + postScreen.flagApprove.ToString());
            }
 
                return cell;
        }
    }
 
    public partial class HistoryScreen : UIViewController
    {
        public HistoryScreen () : base ("HistoryScreen", null)
        {
            this.Title = "Hstory";
        }
 
        public override void DidReceiveMemoryWarning ()
        {
            // Releases the view if it doesn't have a superview.
            base.DidReceiveMemoryWarning ();
            // Release any cached data, images, etc that aren't in use.
        }
 
        public void myTable()
        {
            UITableView table;
 
 
            table = new UITableView(View.Bounds); // defaults to Plain style
            string[] tableItems = new string[] {
                "Vegetables",
                "Fruits",
                "Flower Buds",
                "Legumes",
                "Bulbs",
                "Tubers",
                "Vegetables2",
                "Fruits2",
                "Flower Buds2",
                "Legumes2",
                "Bulbs2",
                "Tubers2",
                "Vegetables3",
                "Fruits3",
                "Flower Buds3",
                "Legumes3",
                "Bulbs3",
                "Tubers3"
            };
            table.Source = new TableSource (tableItems);
            Add (table);
        }
 
 
 
        public override void ViewDidLoad ()
        {
            base.ViewDidLoad ();
            myTable ();
 
            //switchApproveDontApprove ();
            // Perform any additional setup after loading the view, typically from a nib.
        }
    }
}


а это PostScreen
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
using System;
using System.Drawing;
using MonoTouch.Foundation;
using MonoTouch.UIKit;
using System.Collections.Generic;
 
namespace testiOS
{
    public partial class PostScreen : UIViewController
    {
        bool flagFacebook = false, flagTwitter = false, flagLinkedIn = false;
        List<string> comment_views = new List<string>();
        public bool flagApprove;
    
        public PostScreen () : base ("PostScreen", null)
        {
            this.Title = "Approve";
        }
 
        public override void DidReceiveMemoryWarning ()
        {
            // Releases the view if it doesn't have a superview.
            base.DidReceiveMemoryWarning ();
            // Release any cached data, images, etc that aren't in use.
        }
 
        public void btnClickFB()
        {
            //Default Image Facebook
            btnFaceBook.SetImage (UIImage.FromFile ("facebook_inactive_256x256.png"), UIControlState.Normal);
            btnFaceBook.TouchUpInside += (object sender, EventArgs e) => {
                if (flagFacebook) {
                    flagFacebook = false;
                    btnFaceBook.SetImage (UIImage.FromFile ("facebook_inactive_256x256.png"), UIControlState.Normal);
                    } else {
                    btnFaceBook.SetImage (UIImage.FromFile ("facebook_active_256x256.png"), UIControlState.Normal);
                    flagFacebook = true;
                }
            };
        }
 
        public void btnClickTW()
        {
            //Default Image Twitter
            btnTwitter.SetImage (UIImage.FromFile ("twitter_inactive_256x256.png"), UIControlState.Normal);
            btnTwitter.TouchUpInside += (object sender, EventArgs e) => {
                if (flagTwitter) {
                    flagTwitter = false;
                    btnTwitter.SetImage (UIImage.FromFile ("twitter_inactive_256x256.png"), UIControlState.Normal);
                } else {
                    btnTwitter.SetImage (UIImage.FromFile ("twitter_active_256x256.png"), UIControlState.Normal);
                    flagTwitter = true;
                }
            };
        }
 
        public void btnClickLI()
        {
            //Default Image LinkedIn
            btnLinkedIn.SetImage (UIImage.FromFile ("linkedin_inactive_256x256.png"), UIControlState.Normal);
            btnLinkedIn.TouchUpInside += (object sender, EventArgs e) => {
                if (flagLinkedIn) {
                    flagLinkedIn = false;
                    btnLinkedIn.SetImage (UIImage.FromFile ("linkedin_inactive_256x256.png"), UIControlState.Normal);
                } else {
                    btnLinkedIn.SetImage (UIImage.FromFile ("linkedin_active.png"), UIControlState.Normal);
                    flagLinkedIn = true;
                }
            };
        }
 
        //Incoming Message(Posting App)
        public void incomingMessage()
        {
            UILabel postMessage = new UILabel (new RectangleF (15, 5, 742, 150));
            postMessage.BackgroundColor = UIColor.White;
            View.AddSubview (postMessage);
        }
 
        //Switcher Approve / Don't Approve
        public void switchApproveDontApprove()
        {
            UILabel myText = new UILabel (new RectangleF (100, 325, 135, 20));
            myText.Text = "Don't Approve";
            Console.WriteLine("FlagApprove = " + flagApprove.ToString());
            myText.BackgroundColor = UIColor.White;
 
            UISwitch mySwitch = new UISwitch(new RectangleF(10, 325, 20, 50));
            mySwitch.ThumbTintColor = UIColor.White;
            mySwitch.OnTintColor = UIColor.Green;
            mySwitch.TintColor = UIColor.Red;
 
            mySwitch.TouchUpInside += (object sender, EventArgs e) => {
                if(mySwitch.On) {
                    flagApprove = true;
                    myText.Text = "Approve";
                    Console.WriteLine("PSflagApprove = " + flagApprove.ToString());
                }else{
                    flagApprove = false;
                    myText.Text = "Don't Approve";
                    Console.WriteLine("PSflagApprove = " + flagApprove.ToString());
                }
            };
            View.AddSubview (mySwitch);
            View.AddSubview (myText);
        }
 
        //Add Comment
        public void AddCommentMessage()
        {
            string myUser;
            string myMessage;
 
            myUser = new NSUserDefaults ().StringForKey ("userName");
            myMessage = postView.Text;
 
            comment_views.Add (myUser + "\n" + DateTime.Now.ToString () + "\n" + myMessage);
 
            cellComment.Source = new TableSource(comment_views.ToArray());
        }
 
        //Loading Avatar Image
        public void loadAvatar()
        {
            UIImageView avatar = new UIImageView (UIImage.FromFile("avatar.jpg"));
            avatar.Frame = new RectangleF (650, 290, avatar.Image.CGImage.Width, avatar.Image.CGImage.Height);
            View.AddSubview (avatar);
        }
 
        public override void ViewDidLoad ()
        {
            View.BackgroundColor = UIColor.White;
            //tbs.cell = new UITableViewCell ();
 
            incomingMessage ();
            switchApproveDontApprove ();
 
            base.ViewDidLoad ();
            // Perform any additional setup after loading the view, typically from a nib.
            postView.Layer.BorderWidth = 0.5f;
 
            btnClickFB();
            btnClickTW();
            btnClickLI();
 
            loadAvatar ();
 
            // Comment Setting
            btnComment.AddGestureRecognizer(new UILongPressGestureRecognizer());
            var tapRecognizerComment = new UITapGestureRecognizer();
            tapRecognizerComment.AddTarget(() =>
                                          {
                AddCommentMessage();
                cellComment.ReloadData();
                //method
            });
            tapRecognizerComment.NumberOfTapsRequired = 1;
            this.btnComment.AddGestureRecognizer(tapRecognizerComment); 
        }
    }
}


Добавлено через 1 минуту
на форме PostScreen создается uiswitch ввели что то в текстовое поле переключили switch он выводит в таблицу цвет красный переключили еще раз он выводит в таблицу этот же текст, но зеленым)

Добавлено через 2 часа 18 минут
сделал) но есть вопросик как указать "изменить цвет текста у определенной ячейки"? у UITableViewCell
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru